React中Select组件onChange无法获取全局变量的值,如何解决?
react中select组件onchange无法获取全局变量的值的解决办法
react函数中打印fetchdata变量显示空值,是因为它是一个全局变量,在useeffect中被设置。而在onchange事件处理函数中,这个变量是局部状态变量tdata,而不是全局变量。
要解决这个问题,可以将fetchdata变量作为参数传递给onchange事件处理函数,或者在函数内使用usememo或usecallback钩子来缓存变量。
代码示例:
const Equipment: React.FC<{ fetchdata: any, currentRef: any }> = (props) => { const { fetchdata, currentRef } = props; const [form] = Form.useForm(); const [tdata, settdata] = useState<any>([]); useEffect(() => { settdata(fetchdata); }, [fetchdata]); const onCellChange = (value, type, idx) => { console.log(fetchdata); // 获取全局变量的值 // ...其他处理逻辑 }; // ...其他代码 };
以上就是React中Select组件onChange无法获取全局变量的值,如何解决?的详细内容,更多请关注硕下网其它相关文章!