在package.json添加javascript
"dependencies": { "react": "^0.14.0", "react-dom": "^0.14.1" }
安装依赖html
npm init
或者直接java
npm install react react-dom --save-dev
在你编写的react组件文件里 react
在你的入口文件里 webpack
其余事情就交给webpack去作吧。、web
这种方法更方便,可是不利用实际开发,平时练习也就算了。npm
<script src="build/react.js"></script> <script src="build/JSXTransformer.js"></script> <script src="build/browser.min.js"></script>
组件类的第一个字母必须大写
JS代码json
var Comment=React.createClass({ render:function(){ return ( <div className = "comment" > <h2 className="commentAuthor"> {this.props.author} </h2> <p className="commentContent">{this.props.children}</p> </div> ); } }) React.render( <Comment author="Liz"> Hello!world. </Comment>, document.getElementById('container') );
Html代码dom
<div id="container"></div>
Resultui
若是不使用jsx语法,咱们还有两种方法建立组件。
(1)Jsx,更加语义化,可直接套子节点和内容
<div className = "comment" > <h2 className="commentAuthor"> Liz </h2> <p className="commentContent">Hello!world.</p> </div>
(2)React,相似于json格式,须要什么就嵌套,可是参数顺序比较严格,参数一为标签名,第二个属性json格式,第三个是内容,第二个不能省略,实在没有属性就填null.
React.createElement("div", {className:"comment"}, React.createElement("h2",{className:"commentAuthor"},"Liz"), React.createElement("p",{className:"commentContent"},"Hello!world.") )
(3)React工厂
var div = React.DOM.div; var h2 = React.DOM.h2; var p = React.DOM.p; div({className:"comment"}, h2({className:"commentAuthor"},"Liz"), p({className:"commentContent"},"Hello!world."))
获得的结果都是同样的。
相比之下,我仍是更倾向于Jsx写法。