我有一个ReactJS应用程序,并使用简单的html标签创建了一个受控组件。
问题是,在Microsoft Edge中通过刷新按钮刷新页面或按F5键(当从导航栏输入内容时,它工作正常)时,输入值无法正确清除,它们被卡住了。如果我开始输入表单的任何输入,那么它们就会消失。
证据:https://www.screencast.com/t/kJupEbHykZ1X
我已经尝试过:
-清除 windows.onload
上的值
-在输入标签
上设置 autocomplete ='off'
-创建超时功能。
为了进行测试,我在所有地方添加了 console.logs ,以确保所有生命周期方法都被调用,并且每个方法中的状态都是空的。
我也遇到过这篇文章:https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/21174802/
但是这些似乎都无法解决问题。
<input
id={`input-${id}`}
key={`input-${id}`}
type={inputType}
value={value}
autoComplete="off"
onChange={this.handleValueChange}
/>
答案 0 :(得分:0)
Internet Explorer和Edge正在缓存输入标签。在Windows上,按Ctrl + F5快捷键即可进行硬刷新。但是对我来说,我在Edge中按Ctrl +双击F5,然后刷新。您也可以参考this thread。