React输入框焦点丢失

#1

环境:Redux+React+Router开发

写了一个搜索组件,封装Input搜索框,输入框onChange的时候,调用this.props.onSearch,调用搜索方法(action),完成异步请求。

碰到的问题是:输入一个字符后,因为调用了onChange,所以输入框焦点就丢失了…

请问大家有碰到这种情况吗?

目前可以排除的是,搜索组件的问题,因为这个组件在另一个项目中(flux框架)中的应用是正常的…

#2

这个我也遇到过类似情况,在flux下正常使用的组件搬到reflux出现和楼主一样的问题。更甚者在输入中文时候存在严重问题。
原因是flux是同步的,异步的就会有问题。不知道这是不是你的问题。
https://github.com/reflux/refluxjs/issues/43 里面会有讨论和解决方法

#3

我刚也遇到这个问题 想强制focus 结果console出来的input对象render之后被替换了 原来是循环体中的key={item}和value关联起来了
{comments.map((item, i)=>{
return




})}
1 Like
#4

谢谢~还真的是key的问题

#5

一年后…