Мне нужно добавить div внутри contenteditable div, основываясь на тексте contenteditable div. Пример дела:
const ceDiv = document.getElementById('foo')
//and when text in ceDiv ends with {{ i need to show another div in current caret position
что-то вроде Facebook сделал с упоминанием друзей
что я сделал сейчас, заменил {{var}} на div:
export function findAndReplaceBrackets(string: string): string {
const bracketReg = /\{{2}(.*?)\}{2}/ig
const brackets = string.match(bracketReg)
if (!brackets) return string
string = string.replace(/<\/?[^>]+(>|$)/g, '') // reset variables in string
brackets.forEach(variable => {
string = string.replace(variable, `<span style="
cursor: pointer;
background-color: blue;
color: #ffffff;
text-transform: uppercase;
font-size: 13px;
padding: 1px;
margin: 0 2px;
border-radius: 4px
">${variable}</span>`)
})
return string
}
но это совсем не решает мою проблему