提问人:hden 提问时间:1/15/2019 最后编辑:Ahtishamhden 更新时间:1/25/2019 访问量:691
Safari 仅在文本输入中初始 onKeyDown 后触发一次 onChange
Safari only firing onChange once after initial onKeyDown in text input
问:
我的 react 组件中有一个输入字段,它调用了我编写的函数。也调用此函数,但仅在有限的情况下。onChange()
onKeyDown()
但是我只在 Safari 中因输入更改而被调用一次,这并没有像我预期的那样更新我的输入字段。在 Chrome 中,每当用户更改我的输入时,都会调用 my,并按照我的预期更新输入字段。onChange()
onChange()
有人遇到过这种情况吗?并找到解决方案?
我试过替换为 ,但后来读到 react 基本上是 javascript 的。onChange()
onInput()
onChange()
onInput()
更新:我发现我的问题是我定义了我的输入,我将其作为道具传递给我的渲染函数中的另一个组件。My on that input 包含一个 ,它重新呈现我的组件并(我认为)取消注册我的 .但同样,这只发生在 Safari 中 - 在 Chrome、Firefox 和 IE 中运行良好。onChange()
setState()
onChange()
更新2:事实证明,这是一个 css webkit 标志,在所有其他浏览器中都不是问题,但在 safari 中却是一个问题。我取消了它的设置,它起作用了(以防将来其他人遇到这种情况)。
答: 暂无答案
评论
user-select
none
auto