Alt.js的入门
一、什么是Alt
altJS是基于Flux使用Javascript应用来管理数据的类库,它简化了flux的store、actions、dispatcher。
关于Flux,以下链接都做了很好的诠释
http://news.cnblogs.com/n/208305/
http://www.cnblogs.com/linerz/p/react-flux-example-todomvc-analysis.html
二、还需要了解
React, CommonJS, ES5 Javascript, 至于ES6,本文采用ES5做例,有兴趣的朋友可以转成ES6,关于ES6浏览器兼容问题,还要下载babel进行转换。
三、安装
alt是基于Note.js开发的,所以安装前需要安装note.js
使用npm安装alt:npm install alt
四、Alt的基本结构
项目结构
|--actions/
| |--MyActions.js
|--stores/
| |--MyStore.js
|--components/
| |--MyComponent.jsx
|--alt.js
|--app.js
六、创建alt
var Alt = require(‘alt’); var flux = new Alt(); module.exports = flux;
七、创建Actions
alt 通过自定义的方法进行actions的创建createActions
var flux = require(‘…/flux’);
module.exports = flux.createActions({
GetData:function(input){
/*
webapi get 获取数据data
*/
this.dispatch(data);
},
GetDetail: function(id){
/*获取单条数据*/
this.dispatch(data);
}
});
八、创建Store
var flux = require(‘…/flux’);
var MyActions= require(‘../actions/MyActions’);
var MyStore = flux.createStore({
bindListeners:{
Handledata: MyActions.GetData,
HandleDetail:MyActions.GetDetail
},
Handledata:function (data){
this.setState({datas: data});
},
HandleDetail:function(data){
this.setState({data:data});
}
},’MyStore’);
module.exports = MyStore;
九、在View中使用MyComponent.jsx
var React = require(‘react’);
var MyStore = require(‘../Stores/MyStore’);
var MyAction = require(‘../Stores/MyAction’);
var MyComponent = React.createClass({
getInitialState:function(){
return MyStore.getState();
},
getDetail: function(data,e){
var id = data.Id;
MyAction.GetDetail (id);
},
componentDidMount: function(){
MyStore.listen(this.onChange);
},
componentWillMount: function(){
MyStore.unlisten(this.onChange);
},
onChange: function(state){
this.setState(state);
},
render: function(){
return(
<ul>
{this.state.datas.map(function(data){
Return (
<li onClick={this.getDetail.bind(null,data)}>{data.name}</li>);
})}
</ul>
);
}
});
module.exports = MyComponent;
Alt.js的入门的更多相关文章
- JS快速入门(二)
目录 JS快速入门(二) 结构图 BOM window对象 open() window子对象 location对象 history对象(了解) navigator 对象 screen对象 BOM 定时 ...
- Node.js快速入门
Node.js是什么? Node.js是建立在谷歌Chrome的JavaScript引擎(V8引擎)的Web应用程序框架. 它的最新版本是:v0.12.7(在编写本教程时的版本).Node.js在官方 ...
- doT js模板入门
doT.js github地址: doT.js 官方站点 实例1:简单 <!DOCTYPE html> <html lang="en"> <head& ...
- Angular JS从入门基础 mvc三层架构 常用指令
Angular JS从入门基础 mvc模型 常用指令 ★ 最近一直在复习AngularJS,它是一款优秀的前端JS框架,已经被用于Google的多款产品当中.AngularJS有着诸多特性,最为核心 ...
- EChart.js 简单入门
EChart.js 简单入门 最近有一个统计的项目要做,在前端的数据需要用图表的形式展示.网上搜索了一下,发现有几种统计图库. MSChart 这个是Visual Studio里的自带控件,使用比 ...
- alt.js 使用教程
1.action : import alt from "../alt.js"; class DemoActions{ constructor() { this.generateAc ...
- HTML5游戏开发引擎Pixi.js新手入门讲解
在线演示 本地下载 这篇文章中,介绍HTML5游戏引擎pixi.js的基本使用. 相关代码如下: Javascript 导入类库:(使用极客的cdn服务:http://cdn.gbtags.com) ...
- Node.js开发入门—使用cookie保持登录
这次来做一个站点登录的小样例,后面会用到. 这个演示样例会用到Cookie.HTML表单.POST数据体(body)解析. 第一个版本号,我们的用户数据就写死在js文件中. 第二个版本号会引入Mong ...
- Node.js开发入门—HelloWorld再分析
在Node.js开发入门(1)我们用http模块实现了一个简单的HelloWorld站点,这次我们再来细致分析下代码.了解很多其它的细节. 先看看http版本号的HelloWorld代码: 代码就是这 ...
随机推荐
- Data Mover Script Templates
Datamover is probably the best way to export and import data between PeopleSoft databases and the sc ...
- c#使用DocX添加多级标题
博客转移到 http://jacean.github.io/ 继续分享编程经验 先上效果.可以生成多级标题,但是不能生成1,1.1,1.2这样的自动序列, 只是这样的效果. 实现方法是给Paragra ...
- 《第一行代码--Android》阅读笔记之界面设计
1.单位dp.dip.sp.pt.px.in.mm 这里引用StackOverFlow上的一个解答: px is one pixel. sp is scale-independent pixels. ...
- 小菜的系统框架界面设计-数据的完美呈现(DataGridView扩展)
背景 今天在做系统报表的过程中,我想实现批量操作DataGridView中的数据,在列中加复选框,通过一个事件触发进行全选或取消,可是在外面添加按钮,这种模式虽然能够实现,但是从系统界面设计的角度,美 ...
- 利用crontab自动更新SVN代码
shell.sh#!/bin/sh source ~/.bash_profile LANG=en_US.UTF- cd /opt/web/hzcms/ svn up >> /opt/web ...
- android 的通知管理
1在context里定义通知管理器(NotificationManager) NotificationManager notificationManager = (NotificationManage ...
- 学习jQuery在表单信息修改之中的常用方法;
submitHandler: function (form) { var parm = $("#myform").serialize(); var url = $("#m ...
- mssql 置疑的处理
declare @dbName sysName ALTER DATABASE @dbName SET EMERGENCY ALTER DATABASE @dbName SET SINGLE_USER ...
- C# 乘法口诀表的实现方法
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 乘法运算 ...
- 转:OK6410内存及启动流程
一.内存 只是从大体上介绍,并没有涉及寄存器的操作 6410的系统资源为:256MB DDR .2GB NANDFlash 如下图所示: ROM是只读存储器,RAM是随机存储器. 区别: 1.ROM( ...