насколько я понимаю, решение для вас может быть динамический компонент.
, если вы добавите массив имен компонентов к вашему data
, (после того, как вы импортировали все из нихи зарегистрировал их в свойстве components
), например
data() {
return {
componentsArr:['panelGroup',
'secondComponent',
'thirdComponent'],
dataLoading: true,
dataFromDB: null,
message: 'This is test',
tickets: 0,
aircrafts: 0,
pilots: 0,
airports: 0,
assessed: 0,
disregard: 0,
}
},
components:{
exampleComponent,
panelGroup,
secondComponent,
thirdComponent
}
, затем в своем шаблоне вы перебираете этот массив, используя v-for и v-if (чтобы убедиться, что он не будет обработан до того, как вы получите нужные данные):
<component v-if=" ! dataLoading" v-for="comp in componentsArr" :is="comp"
:ticketsProp="tickets"
:airportsProp="airports"
:aircraftsProp="aircrafts"
:pilotsProp="pilots"></component>