ReactDataGrid 5.0.1版本编辑单元格输入(时强制关闭编辑模式问题
ReactDataGrid 5.0.1 版本 Windows Chrome 下单元格编辑异常问题
我们使用旧版本ReactDataGrid 5.0.1,因项目已上线生产环境,无法立即升级版本。双击表格单元格会进入编辑模式,输入括号(时会打开对应dropdown,该功能仅在Ubuntu系统下运行正常。
在Windows系统Chrome浏览器中,仅首个单元格编辑时输入(可以正常打开下拉菜单,其余单元格输入(时会强制关闭编辑模式,可参考下方演示内容。
依赖版本
"react-data-grid": "5.0.1", "react-data-grid-addons": "5.0.4-2",
相关代码
按键处理逻辑
handleKeydown = (e) => { e.stopPropagation() if (e.key == "(") { this.setState({ showDropdown: true }) } else if (e.key == ")") { this.setState({ MDDvalue: [], showDropdown: false, }) } }
单元格渲染代码
<div onKeyDown={this.stopPropagation} style={{ pointerEvents: `${isEditable ? "all" : "none"}` }} className="cell_bg-wrapper"> <input value={this.state.value} ref="hybridinput" onKeyDown={this.handleKeydown} onChange={(e) => this.handleChangeComplete(e)} /> {this.state.showDropdown ? ( <React.Fragment> <div onKeyDown={this.stopPropagation} style={{ width: "100%", position: "relative", right: 0, bottom: 5, backgroundColor: "white", color: "black", }}> <Select value={this.state.MDDvalue} onChange={this.addValue} options={options} defaultMenuIsOpen={true} isMulti={true} closeMenuOnSelect={!true} onBlur={this.onBlur} onKeyDown={this.onKeyDownofSelect} /> </div> </React.Fragment> ) : null} </div>
效果演示
静态效果截图

动态操作演示

内容的提问来源于stack exchange,提问作者Vikas Acharya
相关产品推荐
相关产品推荐

