我正在尝试覆盖'list autofill'默认密钥绑定。我的配置基于文档(http://quilljs.com/docs/modules/keyboard/#configuration),但它似乎没有工作;默认处理程序是触发,似乎没有添加我的(基于检查quill.keyboard.bindings
)。
这是我的代码(这基本上是键盘模块绑定的副本,对处理程序进行了编辑):
var bindings = {
'list autofill': {
key: ' ',
collapsed: true,
format: { list: false , 'testListNum': false, 'testListBul': false},
prefix: /^(1\.|-)$/,
handler: function(range, context) {
let length = context.prefix.length;
this.quill.scroll.deleteAt(range.index - length, length);
if (length === 1){
this.quill.formatLine(range.index - length, 1, 'testListBul', true, Quill.sources.USER);
}else{this.quill.formatLine(range.index - length, 1, 'testListNum', true, Quill.sources.USER);}
this.quill.setSelection(range.index - length, Quill.sources.SILENT);
}
}
};
然后:
var editor = new Quill('#editor', {
modules: {
keyboard: {bindings: bindings},
toolbar: '#toolbar',
},
theme: 'snow'
});
还有更多吗?这种类型的“自定义”键绑定是否可以被覆盖?我的处理程序是否需要以某种方式比默认更具体?