Как можно предотвратить добавление сверх максимального количества букв? скажем лимит 300 знаков, как сделать так, чтобы больше не добавлялось?
const text: string = node.textContent
value - строка
beforeUpdate(()=>{ if (value.length > 3){ value = value.slice(0, 3); } });
Можно еще посредством use: <span contenteditable="true" bind:textContent={value} use:maxlength={3}/> function maxlength(node, maxValue){ node.addEventListener("DOMCharacterDataModified", (e)=>{ node.innerText = node.innerText.slice(0, maxValue); }) return { destroy(){ node.removeEventListener("DOMCharacterDataModified") } } }
Но в обоих случаях надо как-то обрабатывать установку фокуса в конец, иначе после обновления курсор прыгает в начало и добавление текста идет сначала, а не в конец, как может хотеться
Обсуждают сегодня