【发布时间】:2016-08-09 05:34:37
【问题描述】:
这个问题与将 JSX 文件动态导入 React 相关。
基本上,我们有一个主要组件,它根据存储在数据库中的结构动态呈现其他组件。动态组件存储在子目录“./Components”中。我们将 this 静态定义为:
import CompA from './Components/CompA';
import CompB from './Components/CompB';
var components = {
'CompA': CompA,
'CompB': CompB
}
我们使用以下方法渲染它们:
var type = 'CompA'
var Component = components[type];
...
<Component />
虽然这很好用,但对我们来说有点过于静态了。我们有 100 多个组件 (CompA/CompB),静态定义它们不起作用。
是否可以在“./Compontents”中导入所有 JSX 文件并填充组件数组?
而且,如果我们可以将“./Components”路径作为道具发送给主要组件,那将是真正(真正)好的。主要组件将使用此路径来导入 .jsx 文件。像这样:
<MainComponent ComponentPath="./SystemComponents">
将使用“./SystemComponents”作为 .JSX 文件的路径,并且:
<MainComponent ComponentPath="./UserComponents">
将使用“./UserComponents”作为导入路径。
【问题讨论】:
标签: reactjs