我目前正在用Material UI构建一个React应用程序。我试图用下拉菜单构建一个选择组件,当我正在编写handleChange函数时,我得到一个警告,我的函数参数event
已被弃用。
我以前在编辑其他依赖于事件变量的函数的应用程序时看到过这种情况。在网上,我看到了使用.bind
或.addEventListener
代替的建议,但我不完全理解这些是如何工作的。它似乎也使代码更丑…
我想我只是在寻找一些关于如何在MUI选择组件的情况下实现这些替代方案的建议。这就是我想要写的:
const handleChange= (event: any) => {
setState(event.target.value);
};
这样我可以很容易地在渲染函数中使用它:
<Select
native
value={binary} \ (state variable)
onChange={handleChange} \ (nice and simple function ref)
inputProps={{
name: 'binary',
id: 'binary-select',
}}
>
如果event
被弃用,我是否冒着将来使用它失去功能的风险?如果我应该使用这些我在网上看到的替代解决方案,我将如何在这种情况下应用它们?
谢谢!
我猜VSCode错误地将我的事件参数作为GLOBAL事件处理程序,这是不赞成的。正如其他人的评论所指出的,使用event作为参数是完全可以的!
解决问题。