<!DOCTYPE html><html><head><script src="../build/react.js"></script><script src="../build/react-dom.js"></script><script src="../build/browser.min.js"></script></head><body><div id="example"></div><script type="text/babel">var MyComponent = React.createClass({handleClick: function() {this.refs.myTextInput.focus();},render: function() {return (<div><input type="text" ref="myTextInput" /><input type="button" value="Focus the text input" onClick={this.handleClick} /></div>);}});ReactDOM.render(<MyComponent />,document.getElementById('example'));</script></body></html>01、组件并不是真实的DOM节点,而是存在于内存之中的一种数据结构,叫做虚拟DOM (virtual DOM)只有当它插入文档以后,才会变成真实的DOM。根据React的设计,所有DOM的变动,都先虚拟DOM上发生,然后再将实际发生变动的部分,反映在真实DOM上,这种算法叫DOM diff.02、从组件获取真实DOM的节点,用到 ref属性。this.refs.[refName] 会返回这个真实DOM节点。