Reactjs 将道具传递给动态创建的组件
我动态地创建了一个组件,并希望将一些道具传递给它,如下所示Reactjs 将道具传递给动态创建的组件,reactjs,redux,components,Reactjs,Redux,Components,我动态地创建了一个组件,并希望将一些道具传递给它,如下所示 import ResouceUsageGadget from './ResouceUsage/ResouceUsageGadget' constructor() { ... this.gadgetStateMap = { "ResouceUsageGadget":{"name":"ResouceUsageGadget", "type":ResouceUsageGadget, "state":"
import ResouceUsageGadget from './ResouceUsage/ResouceUsageGadget'
constructor() {
...
this.gadgetStateMap = {
"ResouceUsageGadget":{"name":"ResouceUsageGadget", "type":ResouceUsageGadget, "state":"normal"}
}
}
...
render(){
let aa = this.gadgetStateMap["ResouceUsageGadget"].type
return (
<aa gadgets={this.props.gadgets}/>
)
}
const DashboardContainer = connect(
store => {
return {
gadgets: store.DashboardReducer.gadgets
};
}
)(_DashboardContainer);
export default DashboardContainer
从“./ResourceUsage/ResourceUsageGadget”导入ResourceUsageGadget
构造函数(){
...
this.gadgetStateMap={
“ResourceUsageGadget”:{“名称”:“ResourceUsageGadget”,“类型”:ResourceUsageGadget,“状态”:“正常”}
}
}
...
render(){
设aa=this.gadgetStateMap[“ResourceUsageGadget”].type
返回(
)
}
const DashboardContainer=连接(
商店=>{
返回{
小工具:store.DashboardReducer.gadgets
};
}
)(_仪表盘容器);
导出默认仪表板容器
我得到一个警告:
警告:标签上的未知道具小工具。从元件上拆下此道具。
在aa中(由_DashboardContainer创建)
在div中(由_DashboardContainer创建)
在div中(由_DashboardContainer创建)
在_仪表板容器中(由Connect(_仪表板容器)创建)
in Connect(_DashboardContainer)(由_MainContainer创建)
而这个组件从未出现过
有什么问题吗?嗯,试着这样做:
import ResouceUsageGadget from './ResouceUsage/ResouceUsageGadget'
constructor() {
...
this.gadgetStateMap = {
"ResouceUsageGadget":{"name":"ResouceUsageGadget", "type":ResouceUsageGadget, "state":"normal"}
}
}
...
render(){
let aa = React.createElement(this.gadgetStateMap["ResouceUsageGadget"].type,
{'gadgets': this.props.gadgets})
return (
{aa}
)
}
const DashboardContainer = connect(
store => {
return {
gadgets: store.DashboardReducer.gadgets
};
}
)(_DashboardContainer);
export default DashboardContainer
组件实际上是一个html标记,与
类似,而不是您从以下位置导入的ResourceUsageGadget
组件:
警告:
组件名称始终以大写字母开头。
例如,
表示一个DOM标记,但
表示一个组件,并且要求欢迎
在范围内
试着改变
render(){
let aa = this.gadgetStateMap["ResouceUsageGadget"].type
return (
<aa gadgets={this.props.gadgets}/>
)
}
render(){
设aa=this.gadgetStateMap[“ResourceUsageGadget”].type
返回(
)
}
将来
render(){
设Aa=this.gadgetStateMap[“ResourceUsageGadget”].type
返回(
)
}
看看这是否有帮助
render(){
let Aa = this.gadgetStateMap["ResouceUsageGadget"].type
return (
<Aa gadgets={this.props.gadgets}/>
)
}