我正在使用最新版本的React Router 4.1.2和动态路由。
这对我有用:
routes.push(<Route key={tab.id} exact path="/" component={Dashboard}/>)
但这不起作用:
routes.push(<Route key={tab.id} exact path="/" component={tab.component}/>)
显然,因为{tab.component}
是一个字符串(值为Dashboard
),其中{Dashboard}
是一个函数。
我怎样才能让它发挥作用?如何将我的字符串转换为与字符串同名的React组件?
答案 0 :(得分:2)
一种简单的方法是将您的组件放在地图中,以便按名称查找它们。当您想通过字符串检索某些内容时,这是一种非常常见的模式。
/home/tony/Desktop/test.txt: line 1: Status: command not found
/home/tony/Desktop/test.txt: line 2: Availability: command not found
/home/tony/Desktop/test.txt: line 3: State: command not found
/home/tony/Desktop/test.txt: line 4: Reason: command not found
/home/tony/Desktop/test.txt: line 5: CMP: command not found
/home/tony/Desktop/test.txt: line 6: CMP: command not found
/home/tony/Desktop/test.txt: line 9: Traffic: command not found
/home/tony/Desktop/test.txt: line 10: Bits: command not found