1

我目前正在尝试制作允许我为不同的表格行输入热键的 UI...

所以主要想法是制作像editableCell这样的东西,我将在其中输入热键。

我已经从文档中找到了 getKeyComboString 方法:http: //blueprintjs.com/docs/#core/components/hotkeys.key-combos

但我的问题是:我如何制作像 EditableCell 双击这样的东西?

我查看了源代码并发现,editableCell 为此使用了 Draggable 组件(正如我可以说的那样),但我无法导入它。所以我不知道我应该如何检查我的输入是否失去焦点......

任何想法如何进行热键输入?

4

1 回答 1

0

我已经使用 onBlur 事件和isEditing状态完成了这项工作。

        <div
            className={className}
            onDoubleClick={this.handleCellDoubleClick}
            onBlur={this.handleBlur}
            onKeyDown={this.handleKeyDown}
            tabIndex={0}
        >
            {this.state.keyCombo} 
        </div>

onDoubleClick 将状态设置为isEditing: true

onBlur 将其设置为 false

onKeyDown 仅在isEditing: true

于 2017-07-19T10:17:11.990 回答