我使用的是有状态的组件但是在使其成为无状态时我不清楚如何/如果我可以切换内部字段:
这是一个人为的例子。我实际上正在使用react-redux-form
,需要根据某些无线电切换某些输入字段。
const Sample = (props) => {
let show = true
const toggleMethod = (model, value) => {
show = !show
}
return (
<div>
<Control changeAction={toggleMethod} />
{ show === 'cc' ? <CCFIelds /> : null }
</div>
)
}
切换方法效果很好,但不会重新渲染。我是否有义务为此使用州或有没有办法按原样使用?
答案 0 :(得分:0)
当@Jason Xu说你可以派遣改变状态时,这是一种影响父母并引起重新投降的方式,但你不必减少。
最简单的方法是让父(智能容器)拥有并控制show
变量,然后作为道具传递给无状态组件。在父级中定义toggleMethod()
,并向下传递。
总结:
show
在父级
prop
更改
无国籍组件重新出现