当<option>
包含三个插值(如果一个是条件值)时,React DOM停止工作。
这是一个小提琴:https://jsfiddle.net/0opjvycp/
使用<select>
NotFoundError: Node was not found
崩溃的值
它在React 15上工作正常,这只发生在react 16.2
中答案 0 :(得分:1)
这绝对是一个奇怪的。
如果我将{isSelected && '(Y) '}
替换为{isSelected ? '(Y) ' : ''
},那就没问题了。但在后一种情况下,输出始终是一个字符串。
如果您在<Option>
和字符串值之间更改false
个孩子,React似乎不满意重新呈现。也许在DOM协调中存在新的错误。
此外,如果您的目的是重置商店并为更改事件的菜单选择单个选项,而不是:
this.setState({
items: {
...this.state.items,
[v]: true
}
})
做类似的事情:
this.setState({
items: {
...{a:false, b:false},
[v]: true
}
})
如上所述,您永远不会取消选择。