javascript - 动态设置 React 组件的 props
问题描述
我有一个道具值对象,其中键是组件的名称,值是道具的值
{
"ComponentA.prop1": 23,
"ComponentA.prop2": 100,
"ComponentB.prop3": 200,
}
然后我将所有这些组件都放在一个表单中
<form>
<ComponentA />
<ComponentB />
</form>
如何优雅地将所有定义的道具动态传递给正确的组件。
解决方案
为什么不改变数据结构?
const data = [
{
component: ComponentA,
props: {
...componentAprops,
},
},
{
component: ComponentB,
props: {
...componentBprops,
},
},
{
component: ComponentC,
props: {
...componentCprops,
},
},
];
然后你可以简单地将它们映射到 ui 组件中
const elements = data.map(d => {
const Component = d.component;
return <Component {...d.props} />;
});
推荐阅读
- django-rest-framework - 尝试在 TrigramSimilarity 中使用过滤器后端
- python-3.x - jinja2 dictsort 不排序
- javascript - 在 iOS swift 中检查 Javascript 库版本
- python - Azure 数据工作室:编写带有提示的 python
- python - selenium.common.exceptions.TimeoutException:消息:超时:从渲染器接收消息超时
- html - 没有媒体查询的简单 HTML CSS 响应
- android - Android 抽屉布局标题 - 无法访问它
- splunk - Splunk - 如何生成“身份列” id 1,2,3,
- scala - 如何在 Scala 中使用类型参数定义隐式函数?
- node.js - Cloud Run 中 fluent-ffmpeg 处理速度非常慢