我正在努力在 React.js 中创建一个切换按钮,
我正在动态创建输入标签,
所以当我要在标签中申请属性时它不起作用。
请帮我解决 JS 中的任何其他属性
render: function() {
var checks = this.state.data.map(function(d) {
return (
<div className="switch">
{d.id}
<input id="toggle-1" className="toggle toggle-round" type="checkbox" checked={d.selected} onChange={this.__changeSelection.bind(this, d.id)} />
<label for="toggle-1"></label>
</div>
);
最佳答案
查看source code看起来,就像 class
(您需要使用 className
代替)一样,您需要使用备用名称 - 在本例中 htmlFor
:
<label htmlFor="toggle-1"></label>
这可能是因为:
- both
class
andfor
are reserved keywords in JavaScript - 在这几种情况下,属性名称不会与暴露给 JavaScript 的名称一对一映射,React 选择匹配 JavaScript API,而不是导入 DOM 名称(React 处理
data-*
和aria-*
转换,但文档明确地调用了该行为)。
关于javascript - 除了标签中的 "for"我可以使用什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24996463/