仮想 DOM は作成されるコンポーネントの説明にすぎないため、仮想 DOM ではこれを行うことはできません (実際のコンポーネント インスタンスは、レンダリング時にのみ作成または更新されます)。
ただし、 refsを使用してレンダリングした後、react コンポーネント内のコンポーネント インスタンスにアクセスできます。
var Test = React.createClass({
getInitialState: function(){
return {value:0};
},
setValue: function(value){
this.setState({value:value});
},
render: function() {
return <div>Value {this.state.value}</div>;
}
});
var App = React.createClass({
render: function() {
return <div>
<Test ref="test"/>
<button onClick={()=>this.refs.test.setValue(1)}>1</button>
<button onClick={()=>this.refs.test.setValue(2)}>2</button>
<button onClick={()=>this.refs.test.setValue(3)}>3</button>
</div>;
}
});
var mountNode = document.getElementById('app');
ReactDOM.render(<App name="John" />, mountNode);
上記のコードを含む jsbin: http://jsbin.com/kitehujaje/1/edit?js,output