作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
目标是创建一个选择元素,通过 react Hook 将所有名称映射为下拉菜单,由于某种原因,它仅渲染第一个元素并出现未定义的错误,可以提供任何代码引用
import React from 'react';
import styles from './style.css'
const Traveler = () => {
const travelers = [
{ title: "What kind of traveler are you?", name: [
"Adrenaline Addicts", "Culture Lovers", "Aquatic adventures", "Beach enthusiasts", "Adventure seekers",
"Party hoppers", "Motor fans"
] }
]
return (
<React.Fragment>
<select type="text" name="Transportation" className={styles.select}>
<option value="Transportation" className={styles.field} value={travelers[0].title}></option>
{ travelers.map((item, index) => {
return(
<option>{item[0].name[index]}</option>
);
})
}
</select>
</React.Fragment>
);
}
export default Traveler;
````
最佳答案
问题似乎与数组上的映射有关。您需要两个映射函数,一个用于 travelers
数组,第二个用于映射每个旅行者内的 name
数组。它看起来像这样。
{ travelers.map((traveler) => {
return(
<option value="Transportation" className={styles.field} value={traveler.title}></option>
{traveler.name.map((name) => <option>{name}</option>}
);
})
关于javascript - React Hooks : how to properly map an array with nested arrays and objects inside a select element?(新编码器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60008726/
我是一名优秀的程序员,十分优秀!