如果直接从 this.refs 获取元素对象,那么为什么要使用 ReactDOM.findDOMNode?p>
var HelloMessage = React.createClass({
click:function(){
console.log(ReactDOM.findDOMNode(this.refs.a))
console.log(ReactDOM.findDOMNode(this.refs.b))
console.log(this.refs.a)
console.log(this.refs.b)
},
render: function() {
return <div><div onClick={this.click}>click</div>Hello {this.props.name}{this.props.no?<div ref="a">{this.props.no}</div>:<div ref="b"></div>}</div>;
}
});
ReactDOM.render(<HelloMessage name="John" no={1}/>, mountNode);
最佳答案
从使用角度来看,它们之间没有区别。
ReactDOM.findDOMNode
是过去获取 ref 的一种方式。目前它已被弃用,this.refs
是您现在应该执行的操作。
关于reactjs - ReactDOM.findDOMNode(this.refs.a) 与 this.refs.a 有什么不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36661215/