reactjs - 参考选择和选项如何使用
问题描述
需要做什么才能在选择选项时将其存储在 ref 中?
<select className={style.formInput} ref={selectRef}>
{category.map((item) => <option value={item.name}
key={Math.random().toString()}>{item.name}</option>)}
</select>
解决方案
你可以试试这样的
export default function App() {
const [state, setState] = React.useState({ category: "" });
const formValue = (event) => {
setState({ ...state, [event.target.name]: event.target.value.trim() });
};
const category = React.useRef(null);
console.log("state", state);
// On first render
console.log("Category Ref", category.current && category.current.value);
return (
<div>
<label>Categories</label>
<select
ref={category}
onChange={formValue}
name="category"
value={state.category}
>
<option>Select a choice</option>
<option value="First Choice">First Choice</option>
<option value="Second Choice">Second Choice</option>
<option value="Third Choice">Third Choice</option>
<option value="Fourth Choice">Fourth Choice</option>
</select>
</div>
);
}
这样,您可以将其置于状态并在 ref 上访问它。
推荐阅读
- php - Stripe 的 Magento 2.3.5-p2 订单问题
- postgresql - AWS RDS PostgreSQL:所有数据库都增长相同的年龄
- google-apps-script - 带来细胞的位置而不是它的价值
- haskell - 让函数根据参数的值返回不同的类型
- validation - 带有文件的 Blazor Webassembly (.NET 5) 自定义组件:验证不起作用
- python - Python:替换多个 for 循环、多个迭代器
- c++ - clang-tidy linting 忽略第三方标头
- python - 正确使用 python 代码作为模块
- facebook - 在没有合法公司的情况下在 facebook 管理界面中获取权限
- xamarin - xamarin 表单中的 DatePicker 格式