我们想在 React JavaScript 应用程序中禁用Chrome 浏览器中的自动完成功能。我们已经尝试了一系列互联网上可用的解决方案,但没有任何效果。autoComplete=off
不可靠,其他方式也是如此。
目前这对我们来说非常重要,所以您能否建议我们使用 React JavaScript 在 Chrome 中禁用自动完成的万无一失的方法?
其次,我们为我们的文本框使用了一个通用控件/组件,并在任何地方使用它们
我们想在 React JavaScript 应用程序中禁用Chrome 浏览器中的自动完成功能。我们已经尝试了一系列互联网上可用的解决方案,但没有任何效果。autoComplete=off
不可靠,其他方式也是如此。
目前这对我们来说非常重要,所以您能否建议我们使用 React JavaScript 在 Chrome 中禁用自动完成的万无一失的方法?
其次,我们为我们的文本框使用了一个通用控件/组件,并在任何地方使用它们
难道autocomplete="new-password"
要禁用自动完成。
您可以通过添加onFocus
属性覆盖 chrome 自动填充。
render()
{
return <input type="text" name="name" value="this is my input" autoComplete="off" onFocus={this.onFocus} />
}
在该onFocus
方法中,我们需要通过javaScript 更改“自动完成”属性。
onFocus = event => {
if(event.target.autocomplete)
{
event.target.autocomplete = "whatever";
}
};
这个解决方案对我有用。
请让我知道这对你有没有用 ;)
没有什么对我有用new-password
,包括,所以我是这样做的:
onFocus={(event) => {
event.target.setAttribute('autocomplete', 'off');
console.log(event.target.autocomplete);
}}
我的 React 项目也遇到了同样的问题。我的解决方案是对 autoComplete 属性使用随机字符串。不要使用“关闭”,根据Pim,您需要设置一个无效值才能真正关闭自动完成功能。另请注意,React 中的属性名称必须是 autoComplete。