标签:
今天用了一下最简单的方式获取数据处理,来结合react实现实时请求,并刷新数据的小demo.
首先我还是选择了jquery方式中自带的ajax获取数据,首先要引用所需的js包
接下来要写一个自定义的js文件,
创建一个react组件:
var Demo = React.createClass({}); //渲染组件 React.render(<Demo url="../data/package.json" setTime="2000" />,document.getElementById(‘klm‘));
我在这里往Demo组件中传人了2个参数一个是url,是为了给ajax请求指定的请求路径,这个setTime是给定时器设置时长参数,写在这为了后期扩展
接下来我们要先定义一个初始化参数:data 用来动态存放数据的
var Demo = React.createClass({ getInitialState:function(){ return {data:[]} } });
这步做完之后,接下来我们要写一个单独的ajax方法,去完成获取数据操作。
var Demo = React.createClass({
getAjax:function(){
$.ajax({
url:this.props.url,
dataType:‘json‘,
success:function(data){
this.setState({data:data});
}.bind(this),
error:function(e){
console.log(e.toString());
}.bind(this)
});
},
getInitialState:function(){
return {data:[]}
}
});
上面ajax请求中的url值就是刚才外面传人的url,这步这做完了,接下来我们就是放在什么时候开始执行这个操作,在react的生命周期中,componentDidMount是执行在渲染之后的,意思就是一旦你的组件已经运行了 render 函数,并实际将组件渲染到了 DOM 中,componentDidMount 就会被调用。我就在这步开始做操作
标签:
原文地址:http://www.cnblogs.com/kuailingmin/p/4607143.html