我对 Reactjs 比较陌生,所以我可能遗漏了一些明显的东西:
我有一个组件 (DisplayFlags.js),它根据先前选择的大洲显示国旗和国家名称。我已经设置好一切:所有可能的旗帜图像都存在于本地,我还有一个名为“myCountries”的 js 对象,它将每个大陆映射到它的国家,并将每个国家映射到它的名称 + 本地旗帜图像名称。这是它的一部分:
const myCountries ={
"north-america": {
"US": {
"name": "United States",
"picPath": "flag-of-United-States.png"
},
"UM": {
"name": "United States Minor Outlying Islands",
"picPath": "flag-of-United-States-Minor-Outlying-Islands.png"
},
"CA": {
"name": "Canada",
"picPath": "flag-of-Canada.png"
},
"MX": {
"name": "Mexico",
"picPath": "flag-of-Mexico.png"
},
//etc
},
"south-america":{
"AR": {
"name": "Argentina",
"picPath": "flag-of-Argentina.png"
},
"BO": {
"name": "Bolivia",
"picPath": "flag-of-Bolivia.png"
},
//etc
}
}
我打算做什么:循环遍历先前选定大陆的所有国家,并将“名称”和“picPath”作为道具传递给另一个组件 SingleCountry.js,后者依次显示它们。我的问题是导入:我通常只写(示例):
import randomImage from '../../img/icons/some-image-name.png'
然后在我的组件中使用 randomImage 作为 img 元素的 src。在这种情况下,有没有办法从 props 中传递的路径导入图像?就像是:
import flagImage from "../../img/flags/" + this.props.picPath
我知道以上内容不起作用,因为导入在组件之外工作,并且它们无权访问任何类型的道具。我可以在组件内部导入吗?或者我应该完全放弃它并在 DisplayFlag.js 中批量导入图像,然后将图像一张一张地传递到 SingleCountry.js 中?
茅侃侃
收到一只叮咚
动漫人物
相关分类