【发布时间】:2020-12-08 13:37:15
【问题描述】:
我正在尝试使用 ReactJS 自定义 Hook,但我不明白下面的示例中发生了什么!
我希望在屏幕上看到:'标签:',但它是“标签:”,因此该选项未定义!
谁能解释一下幕后发生了什么,为什么我看不到该选项的预期输出?
const useFruit = () => {
const [option, setOption] = useState<string>();
const [options] = useState(["Bananas", "Apples", "Oranges"]);
return {
option,
setOption,
options,
};
};
const FruitDropdown = () => {
const { options, setOption } = useFruit();
return (
<select
placeholder="Select option"
onChange={(e) => {
setOption(e.target.value);
}}
>
{options.map((option) => (
<option value={option}>{option}</option>
))}
</select>
);
};
const FruitLabel = () => {
const { option } = useFruit();
return (
<label>Label: {option}</label>
);
};
export default function play() {
return (
<>
<FruitDropdown />
<FruitLabel />
</>
);
}
【问题讨论】:
标签: javascript reactjs react-hooks use-state