【发布时间】:2017-12-03 20:18:48
【问题描述】:
我有一堆复选框列表要求。我会详细解释。我有一堆语言说:
var languages = ["English", "German", "French", "Spanish", "Mandarin", "Tamil"]
我有一个父组件,它有一个包含四个部分的表单,比如说:
class Page extends React.Component {
render() {
return (
<form>
<h1>CanSpeak</h1> <chkboxlist someProp="speak" />
<h1>CanSpeak</h1> <chkboxlist someProp="read" />
<h1>CanSpeak</h1> <chkboxlist someProp="write" />
<h1>CanSpeak</h1> <chkboxlist someProp="understand" />
<button
onClick={e => {
console.log("Need the various chkboxlist values here");
e.preventDefault();
}}
>
Save
</button>
</form>
);
}
}
我希望 chkboxlist 组件跟踪每个部分中选定语言的列表,并使它们在“保存”按钮单击处理程序中可用。我希望跟踪“页面”组件中的状态变化(每个部分下的选定语言列表)。
我不想使用 redux 或一些这样的外部状态管理。
现在有什么方法可以创建这个 chkboxlist 组件,以便可以在父 Page 组件中跟踪状态更改?是否有任何现有组件可以满足此要求并在 React 生态系统中广泛使用,而无需重新发明轮子?
【问题讨论】:
标签: javascript reactjs checkbox react-jsx web-component