import AsukaData from './info/AsukaData.json' import JinData from './info/JinData.json' const CharArray = [ 'Jin', 'Asuka' {CharArray.map((element,index)=>( <Route path={`/${element}`}><CharPage Data={`${element}Data`}/></Route> ))}
我想用字符串调用JSON data(JinData,AsukaData),但不知道怎么做..
Data={ ${element}Data }被识别为字符串。我希望它是上面导入的json。
${element}Data
发布于 2021-02-04 14:04:27
问题
使用反引号表示字符串插值/模板。
Data={`${element}Data`}
这将从数组中获取字符串值,并注入并返回传递给 Data 属性的新字符串值。
Data
解决方案
如果您只是想映射导入的JSON对象,那么我建议将它们放在数组中。使用对象提供路径键和JSON数据有效负载。
import AsukaData from './info/AsukaData.json' import JinData from './info/JinData.json' const charArray = [ { path: 'Jin', data: JinData }, { path: 'Asuka', data: AsukaData } {charArray.map(({ path, data }) => ( <Route key={path} path={`/${path}`}> <CharPage Data={data} /> </Route> ))}
发布于 2021-02-04 14:03:17
使用对象而不是数组将数据映射到键
const DataMap = {