初试MVVM框架之React入门【南大软院大神养成计划】
2015-11-19 11:12
513 查看
var data = [ {author: "Pete Hunt", text: "This is one comment"}, {author: "Jordan Walke", text: "This is *another* comment"} ]; //读取父组件的数据 //在这儿this.props.author读取了传进来的author数据 //而“This this one comment”等数据则被this.props.children读取了 //另外使用的时候,要渲染的一定要放在ReactDOM.render之前。 //上下尊卑有序。 var Comment = React.createClass({ render: function () { return ( <div className="comment"> <h2 className="commentAuthor"> {this.props.author} </h2> {this.props.children} <hr/> </div> ) } }); //CommentBox //data={this.props.data},这句话的意思是 var CommentBox = React.createClass({ render: function () { return ( <div className="commentBox"> <h1>Comments</h1> <CommentList data={this.props.data}/> <CommentForm/> </div> ); } }); //CommentList //这里map的意思是一个遍历函数 //把json数据传进去,并且命名为comment //然后return,Comment author = {comment.author},{comment.text} //然后commentNodes是一个数组,React会对其自动解包 // var CommentList = React.createClass({ render:function() { var commentNodes = this.props.data.map(function (comment) { return ( <Comment author = {comment.author}> {comment.text} </Comment> ) }) return ( <div className="commentList"> {commentNodes} </div> ) } }); //CommentForm var CommentForm = React.createClass({ render: function () { return ( <div className="commentForm"> Hello I'm a commentForm. </div> ) } }); //React的render ReactDOM.render( <CommentBox data={data}/>, document.getElementById('content') );
相关文章推荐
- ReactiveCocoa基础知识内容2
- .Net中的反应式编程(Reactive Programming)
- A Compact React Cookbook
- React Native study
- React入门 (2)—实现微博展示列表
- react-native ios push 本地view
- React study(四)Mixin编写使用、函数复用、自定义表单组件
- 在Windows下搭建React Native Android开发环境[踩坑]
- iOS 开发之 ReactiveCocoa 下的 MVVM(干货分享)
- 整理了一份React-Native学习指南
- 谈谈 React Native
- React 源码剖析系列 - 不可思议的 react diff
- React study (三)事件函数
- React Native Android端10个最常见问题
- React.js
- MVVM without ReactiveCocoa
- iOS 开发之 ReactiveCocoa 下的 MVVM(干货分享)
- Android之React Native 中组件的生命周期
- React入门 (1)—使用指南(包括ES5和ES6对比)
- React study(二)