Всем привет!
Есть чат, сообщения приходят с сервера.
Каждое сообщение уходит в компонент
<v-msg :content="message" />
Некоторые сообщения приходят с bb-тегами, которые должны быть обработаны.
Например, "Вы получили 10 [ico=1]", преобразуем простой заменой в
Вы получили 10 <img src="..." v-tooltip="'золото'">
В итоге пользователь видит сообщение в котором есть иконка золота, но при наведении не работает тултип, потому что не была обработана директива v-tooltip.
Вопрос: как дешево (с точки зрения производительности и кода) заставить вуе обработать директиву?
Код компонента сообщения
<template>
<div
class="v-msg"
v-html="html"
/>
</template>
<script lang="ts">
import Vue from 'vue'
import BB from '@/services/bb'
export default Vue.extend({
name: 'VMsg',
props: {
content: {
type: String,
required: true,
},
},
computed: {
html() {
return BB.parse(this.content)
},
},
})
</script>
Спасибо за ответы.