gpt4 book ai didi

reactjs - 如何递归分析和修改 React 中组件的后代?

转载 作者:行者123 更新时间:2023-12-04 16:04:56 25 4
gpt4 key购买 nike

我正在编写一个表单包装器,我希望它动态更新后代以添加错误消息并为具有验证错误的表单元素添加错误样式。

我知道我可以使用 React.Children.map遍历 child ,但我需要递归遍历所有后代,搜索 <input><button>元素。

关于如何做到这一点有什么想法吗?

例子:

const FormWrapper = (props) => {
let children = this.props.children;

if (this.prop.disabled) {
// Note: do something here with children to recursively
// look for form elements, update their props.
}

return (
<form>
{children}
</form>
);
}

用法:

<FormWrapper errors={this.errors}>
<div className="row">
<div className="col">
<label>Email:</label>
<input type="text" name="email">
</div>
</div>

<div className="row">
<div className="col">
<label>Password</label>
<input type="password" name="password">
</div>
</div>
</FormWrapper>

最佳答案

没有干净、最优和可行的方法来递归子图。您会发现 hack(例如手动调用子项上的 render)但没有什么干净的。

关于reactjs - 如何递归分析和修改 React 中组件的后代?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49183752/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com