ReactJS - 'valueLink'不推荐使用`value`和`onChange`

Jam*_*mes 4 reactjs

我正在按照优秀的Wes Bos的教程学习ReactJS,但是我已经达成了关于2路数据绑定的部分,看起来Wes教学的方法现在已被弃用.我现在需要尝试为下面的代码找到正确的方法,否则我将无法继续学习本教程.

好的,我遇到的问题是"valueLink",控制台说我应该使用'value'和'onChange'代替它.任何人都可以帮助我解决这个问题,似乎很多与反应有关的学习试图保持在所有被弃用的元素之上!

<input type="text" valueLink={linkState('fishes.' + key + '.name')}/>
Run Code Online (Sandbox Code Playgroud)

gap*_*ton 7

好的,我遇到的问题是"valueLink",控制台说我应该使用'value'和'onChange'代替它.任何人都可以帮助我解决这个问题,似乎很多与反应有关的学习试图保持在所有被弃用的元素之上!

Value Link是设计模式,Facebook不能弃用它.他们将从React核心中删除他们对该模式的实现.阅读本文以获取有关模式的说明:

https://medium.com/@gaperton/managing-state-and-forms-with-react-part-1-12eacb647112#.5o63wmy72

与现代React没有简单/凌乱的双向数据绑定!

您不必使用它们的值链接实现(无论如何它都非常有限).而且你不必在任何地方写这些愚蠢的回调.文章中介绍的这个方法更强大.

https://www.npmjs.com/package/valuelink


vca*_*les 0

是的,本教程适用于旧版本的 ReactJS,因为ReactLink 已被弃用。

建议您使用 onChange 事件处理程序来设置状态值:

<input type="text" name="name" onChange={ this.onInputChange.bind(this) } />
Run Code Online (Sandbox Code Playgroud)

基本上,您必须创建一个名为 的方法onInputChange()并在那里处理更改。

这仅供参考,最后,您可能应该参考较新的教程。我推荐这个。