@furrya_black

Как вставить компонент в компонент vue js?

Vue.component('ComponentName', ComponentDefinition);
...
props: { 
    compName: { type: String, default: '' } 
    propsData: { type: Object, default: {} }
}
<component :is="compName" v-bind=propsData>
<!-- вот тут compName  строка с именем ранее зар-ного компонента -->


Работает, но если я хочу передать не имя компонента, а сам объект компонента?

import comp from '@/path/comp.vue';
...
props: { 
    comp: { type: Object, default: {} } 
    propsData: { type: Object, default: {} }
}
<component :is="comp" v-bind=propsData>
<!-- вот тут comp уже передан как объект, не строка с именем ранее зар-ного компонента -->
  • Вопрос задан
  • 1416 просмотров
Решения вопроса 1
kulakoff
@kulakoff Куратор тега Vue.js
Vue.js developing
Если используется система модульной сборки, то можно так:
<template>
  <component :is="comp" v-bind=propsData>
</template>

<script>
import comp from '@/path/comp.vue';

export default {
  props: ['propsData'],
  data() {
    return {
      comp
    }
  }
}
</script>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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