【发布时间】:2018-06-16 07:10:18
【问题描述】:
快速提问。有人知道如何渲染一组组件吗?试图让开发人员更容易更改特定组件。 (它就像一个仪表板)。
组件列表文件
import React from 'react';
export default [
<ComponentOne/>
<ComponentTwo/>
];
仪表板组件
import React from 'react';
import components from './../../components';
export default class Dashboard extends React.Component
{
render = () => {
//Want to render the array of components here.
return (
<div className="tile is-parent">
{components}
</div>
);
};
}
问题是我有一个组件数组,我需要添加一个键。然而!我似乎也无法为组件添加密钥,不知道如何真正解释它,所以这是我尝试过的代码:
{components.map((component, key) => (
<component key={key}/>
}
如果我执行上述操作,我不会收到“您必须应用密钥”错误,但是没有任何渲染?而且我猜这是因为“组件”不存在或者沿着这些线有些奇怪。
我也尝试过component.key = key;,但它显然不允许我在这种类型的对象上这样做?
我想我的后备是返回一个速记函数而不是一个数组,但出于某种原因我喜欢这个数组?对小学生来说似乎更简单。
【问题讨论】:
-
您不能将密钥应用到
component,因为它将作为组件的属性。