Reactjs:使用输入元素时的不变违规
Reactjs : Invariant Violation when using input element
我对 React 有点陌生,正在尝试一个简单的实验。
我想在我的初始渲染中有一个 text-box
和一个 search-button
,然后当我点击 search-button
时,我想要一个完全不同的标记(close-button
+ div/h1
)
所以我将值存储在状态变量中,并在渲染方法中检查该状态并决定标记。
这是相同的 http://jsfiddle.net/rso3uk9f/
的 JSFiddle
在执行此操作时,我遇到了 2 个问题
单击搜索按钮时,会重新呈现并显示结果页面,但不会处理搜索按钮。
当我点击关闭按钮时,出现类似
的错误
Danger: Discarding unexpected node: " ".
ReactMount: Two valid but unequal nodes with the same data-reactid
:
.0.1
有人可以提供一些干净的解决方法吗?
一些解决方法,我试过了
如果您用文本区域或 div 替换输入元素,那么一切
工作正常。
此外,如果我在搜索按钮后添加一个空 div,则空
div 在结果页面上呈现,未显示搜索按钮。但是JS错误还是会出现。
您的 HTML 标记有误。
而不是:
<input type="text"> </input>
简单写一下:
<input type="text" />
我对 React 有点陌生,正在尝试一个简单的实验。
我想在我的初始渲染中有一个 text-box
和一个 search-button
,然后当我点击 search-button
时,我想要一个完全不同的标记(close-button
+ div/h1
)
所以我将值存储在状态变量中,并在渲染方法中检查该状态并决定标记。
这是相同的 http://jsfiddle.net/rso3uk9f/
的 JSFiddle在执行此操作时,我遇到了 2 个问题
单击搜索按钮时,会重新呈现并显示结果页面,但不会处理搜索按钮。
当我点击关闭按钮时,出现类似
的错误
Danger: Discarding unexpected node: " ".
ReactMount: Two valid but unequal nodes with the same
data-reactid
: .0.1
有人可以提供一些干净的解决方法吗?
一些解决方法,我试过了
如果您用文本区域或 div 替换输入元素,那么一切 工作正常。
此外,如果我在搜索按钮后添加一个空 div,则空 div 在结果页面上呈现,未显示搜索按钮。但是JS错误还是会出现。
您的 HTML 标记有误。
而不是:
<input type="text"> </input>
简单写一下:
<input type="text" />