Как использовать компоненты в data?

Импортирую компонент и использую его в data ?

components: {
      LinkElement: () => import('@/components/elements/LinkElement')
    },
    data: function () {
      return {
        departments: [
          {
            id: 1,
            title: this.$t("Отдел по работе с клиентами"),
            contacts: [
              {
                id: 2,
                name: this.$t("Email"),
                value: `<LinkElement link="#">Link</LinkElement>`
              },


В шаблон вставляю через v-html, но в разметке получаю
<linkelement ...
  • Вопрос задан
  • 54 просмотра
Решения вопроса 1
Aetae
@Aetae Куратор тега Vue.js
Тлен
v-html - только для обычного html. И то использовать надо только когда без него совсем никак.
Vue работает с данными, а не разметкой, разметка строится сама на основе данных.
В твоём случае в самом шаблоне должно быть:
...
<component :is="value">{{name}}</component>
...

А в data, соотвтественно:
...
{
  id: 2,
  name: this.$t("Email"),
  value: `LinkElement`
}
...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы