Привет, хочу разбить большие компоненты на маленькие с меньшими зависимостьями, есть ли приемущество такой структуры данных(в данный момент использвую её)в производительности:
items: [
{ type: 'someTypeRequest', ... },
{ type: 'image', ... },
{ type: 'someAnotherTypeRequest2', ... },
{ type: 'video', ... },
]
над этой(думаю сменить на неё):
items: {
requests: [
{ type: 'someTypeRequest1', ... },
{ type: 'someAnotherTypeRequest2', ... },
],
media: [
{ type: 'image', ... },
{ type: 'video', ... }
]
}
В первом случае 1 раз пробегаюсь по 1 большому массиву и вывожу все элементы:
<template v-for="item in items">
<component-a v-if="item.type === 'image'" ...здесь много пропсов></component-a>
<component-b v-if="item.type === 'video'" ...здесь много пропсов></component-b>
<component-c v-if="item.type === 'someTypeRequest'" ...здесь много пропсов></component-c>
<component-d v-if="item.type === 'someAnotherTypeRequest2'" ...здесь много пропсов></component-d>
...и ещё компоненты здесь
</template>
и если мне надо разбить большой компонент(в котором прокидается много пропсов и есть ещё слоты) на малые дочерние компоненты,
то это стаёт болезненным.
Во втором случае у меня есть обьект с массива по ключу которые я могу на фронте посортировать по предназначению (2 подход) и я смогу это хотябы разбить на 2 меньших компонента: 1) для requests; 2) для media. Есть ли во втором подходе недостатки и какие либо есть смысл оставить всё как есть? По API данные приходят в 1 варианте.