onChange 事件不会在 .map 函数 React 中触发
onChange event won't fire in .map function React
我无法触发此 onChange 事件?目标是根据我拥有的一些数据从下拉菜单中呈现多个选项,然后在单击任何选项时控制台记录“hello”...
它似乎不想让我在呈现的选项元素中使用 onChange 或 onClick 事件。如果我可以先简单地控制台日志,那么我可以弄清楚其他一切。我只 post 编辑了必要的代码,但如果需要,我可以 post 剩下的代码!
const SlideData = [
{
title: "Slide 0",
},
{
title: "Slide 1",
},
{
title: "Slide 2",
},
];
export default SlideData;
let options = SlideData.map((item, index) => (
<option
key={index}
value={index}
onChange={() => {
console.log("hello");
}}
>
{item.title}
</option>
));
<select className={styles.select} onChange={goto}>
<option>--Select--</option>
{options}
</select>
option
标签不支持 onChange
。您可以改用 onClick
。
onClick={() => {
console.log("hello");
}}
目标是从技术上传递索引和控制台日志。所以我想这对我有用
const slideRef = useRef();
const goto = ({ target }) => {
slideRef.current.goTo(parseInt(target.value, 10));
console.log(target.value);
};
const options = SlideData.map((item, index) => (
<option key={index} value={index}>
{item.title}
</option>
));
return (
<div className={styles.container}>
<Slide ref={slideRef} {...properties}>
<div className={styles.slide}>First Slide</div>
<div className={styles.slide}>Second Slide</div>
<div className={styles.slide}>Third Slide</div>
<div className={styles.slide}>Fourth Slide</div>
<div className={styles.slide}>Fifth Slide</div>
</Slide>
<div>
<Button type="button" onClick={back}>
Back
</Button>
<Button type="button" onClick={next}>
Next
</Button>
<select className={styles.select} onChange={goto}>
<option>--Select--</option>
{options}
</select>
</div>
</div>
);
我无法触发此 onChange 事件?目标是根据我拥有的一些数据从下拉菜单中呈现多个选项,然后在单击任何选项时控制台记录“hello”...
它似乎不想让我在呈现的选项元素中使用 onChange 或 onClick 事件。如果我可以先简单地控制台日志,那么我可以弄清楚其他一切。我只 post 编辑了必要的代码,但如果需要,我可以 post 剩下的代码!
const SlideData = [
{
title: "Slide 0",
},
{
title: "Slide 1",
},
{
title: "Slide 2",
},
];
export default SlideData;
let options = SlideData.map((item, index) => (
<option
key={index}
value={index}
onChange={() => {
console.log("hello");
}}
>
{item.title}
</option>
));
<select className={styles.select} onChange={goto}>
<option>--Select--</option>
{options}
</select>
option
标签不支持 onChange
。您可以改用 onClick
。
onClick={() => {
console.log("hello");
}}
目标是从技术上传递索引和控制台日志。所以我想这对我有用
const slideRef = useRef();
const goto = ({ target }) => {
slideRef.current.goTo(parseInt(target.value, 10));
console.log(target.value);
};
const options = SlideData.map((item, index) => (
<option key={index} value={index}>
{item.title}
</option>
));
return (
<div className={styles.container}>
<Slide ref={slideRef} {...properties}>
<div className={styles.slide}>First Slide</div>
<div className={styles.slide}>Second Slide</div>
<div className={styles.slide}>Third Slide</div>
<div className={styles.slide}>Fourth Slide</div>
<div className={styles.slide}>Fifth Slide</div>
</Slide>
<div>
<Button type="button" onClick={back}>
Back
</Button>
<Button type="button" onClick={next}>
Next
</Button>
<select className={styles.select} onChange={goto}>
<option>--Select--</option>
{options}
</select>
</div>
</div>
);