在2015-11-17,React更新了0.14版本,其中有不少的内容发生了改变,一次踩了不少的坑,为了今后少跳坑,就把现在已经掌握到的变化一一加以列举
- 在React 0.14之前的版本, react component上的ref属性指向的是对React DOM Component的引用,并不是页面上真实的DOM节点,而在React 0.14之后(包括0.14) , ref开始指向真实的DOM节点。举例说明:
var Zoo = React.createClass({
render: function() {
return <div>Giraffe name: <input ref="giraffe" /></div>;
},
showName: function() {
// var input = this.refs.giraffe.getDOMNode();//之前早期的写法
var input = this.refs.giraffe;
alert(input.value);
}});
```
- 在React 0.14之前的版本, 我们使用React Web相关的能力的时候, 只需要引入一个JS文件, react.js, 但React 0.14之后(包括0.14), react的设计团队为了将React的应用场景更加细化,同react-native, react-art, react-canvas, react-three 等形成并行, 将React Web的能力拆分成了 react.js, react-dom.js 并将DOM操作相关的接口,放在了react-dom.js的ReactDOM对象上,所以涉及一些API的变更:
React.render 变成了 ReactDOM.render
React.findDOMNode 变成了 ReactDOM.findDOMNode 等
注意:至于React.render 这些在0.14.X的版本还能用,但是会有warning提示消息,0.15版本将会被彻底废弃。