Почему пользовательский встроенный блот объединяется с предыдущим вставленным блоттом? - PullRequest
0 голосов
/ 17 января 2020

Я создал свой собственный встроенный блот для Quill js ниже:

import Quill from 'quill'
var Inline = Quill.import('blots/inline')
class EmojiBlot extends Inline {
static create(colons) {
    let node = super.create()
    node.dataset.emoji = colons
    node.setAttribute('contenteditable', false)
    return node
}

static formats(node) {
    return node.getAttribute('data-emoji')
}
}
EmojiBlot.blotName = 'emoji'
EmojiBlot.tagName = 'span'
Quill.register(EmojiBlot, true)

Это работает, но если я последовательно выберу один и тот же блот, они объединятся в один встроенный блот? Я хотел бы, чтобы они были отдельными.

Вот вывод для редактора иглы:

<div>
<span data-emoji=":joy:" contenteditable="false">?</span>
<span data-emoji=":heart_eyes:" contenteditable="false">?</span>
<span data-emoji=":sunglasses:" contenteditable="false">???</span>
</div>

Я выбирал очки для смайликов 3 раза подряд, но они сгруппированы в один тег span. Если я выберу разные смайлики для каждого смайлика солнцезащитных очков, они не будут сгруппированы.

Есть ли настройка для метода create класса Inline, чтобы предотвратить это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...