2016年04月18日

React.ComponentでReact.findDOMNode()がエラーになる

React.ComponentでReact.findDOMNode()を利用しようとすると「Uncaught TypeError: _react2.default.findDOMNode is not a function」というエラーが出てしまいました。
class TodoAdd extends React.Component {
_onAddToDo(){
var newTodo = React.findDOMNode(this.refs.todo).value.trim();
this.props.onAddToDo(newTodo);
}
render () {
return (
<div>
<input type="text" ref="todo" />
<input type="button" value="submit" onClick={this._onAddToDo.bind(this)} />
</div>
)
}
}


調べると0.14よりReact.findDOMNode()を使わずに直接DOMにアクセス出来るようになったらしいので以下のように修正したらちゃんと動きました。

class TodoAdd extends React.Component {
_onAddToDo(){
var newTodo = this.refs.todo.value.trim();
this.props.onAddToDo(newTodo);
}
render () {
return (
<div>
<input type="text" ref="todo" />
<input type="button" value="submit" onClick={this._onAddToDo.bind(this)} />
</div>
)
}
}
posted by ねこまんま at 08:11 | Comment(0) | TrackBack(0) | React | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック