我工作的一个阵营搜索组件,并需要得到搜索字段(文本字段)的值。ReactJS - getDOMNode()与使用状态
是更好的做法是与使用getDOMNode()一个ref
或使用setState()
当字段的值发生变化?:
this.refs.searchInput.getDOMNode().value
VS
onChanged(e) {
setState({
fieldValue = e.target.value;
});
}
编辑:
此外,我读过无数次,如果你可以避免修改状态,那么你应该。在这种情况下,我们有一种通过使用ref
来避免状态的方法,那么我们应该如何?
地看到,建议修改状态引用这将是有趣的,不推荐,尤其是这是最常用的模式是修改国家自上而下的组件,而不是DOM的直接操作。例如,在React文档中,有一个完整的示例将状态用于搜索字段:https://facebook.github.io/react/docs/thinking-in-react.html – WiredPrairie