Предотвратить выполнение TAB-Event в редакторе quilljs в angular 5+ Component

Чтобы предотвратить запуск события вкладки в моем компоненте Angular 5+, я переопределил стандартную реализацию quill для события вкладки с привязкой, как указано в документация

const bindings = {
  // This will overwrite the default binding also named 'tab'
  tab: {
    key: 9,
    handler: function(range) {
      // Handle tab
    },
  },
};

Поскольку мы не хотим иметь дело с вложенными упорядоченными или неупорядоченными списками, я ожидал, что событие вкладки не будет запускаться для пустых записей списка.

введите здесь описание изображения

Кто-нибудь знает, как изменить пользовательский обработчик, чтобы предотвратить эту функциональность?


person Merlin Fotsing    schedule 05.07.2018    source источник


Ответы (2)


Вы должны определить свойство 'modules' следующим образом:

var quill = new Quill('#editor', {
  modules: {
    keyboard: {
      bindings: {
                indent: {
                    key: 'Tab',
                    handler() {
                        return false;
                    },
                },
                outdent: {
                    key: 'Tab',
                    shiftKey: true,
                    handler() {
                        return false;
                    },
                },
            }
    }
  }
});
person mangupozo    schedule 10.02.2021

Ну, есть и другие обработчики по умолчанию для табуляции, такие как отступ, отступ и отступ назад. Вы можете проверить этот файл https://github.com/quilljs/quill/blob/develop/modules/keyboard.js#L184

Так что придется перезаписывать :)

person Merlin Fotsing    schedule 05.07.2018