Как я могу в зависимости от типа, заменить код в компоненте и передать ей определённый масcив.
Есть объект с массивами, в зависимости от типа в пропсах должен передаться определённый массив, в коде есть пример не рабочего метода, но всё должно работать по такой логике
<template>
<main class="main">
<div class="container">
<section class="menu">
<div class="section-heading">
<h2 class="section-title restaurant-title">{{ products.name }}</h2>
<div class="card-info">
<div class="rating">{{ products.stars }}</div>
<div class="price">От {{ products.price }} ₽</div>
<div class="category">{{ products.kitchen }}</div>
</div>
</div>
<div class="cards cards-menu">
<products-card :cards="allRestaurants.foodBand"></products-card>
</div>
</section>
</div>
</main>
</template>
<script>
import './Products.scss';
import ProductsCard from './ProductsCard.vue';
import { mapActions, mapGetters } from 'vuex';
export default {
name: 'Products',
components: { ProductsCard },
props: {
},
computed: {
...mapGetters(['allPartners', 'allRestaurants']),
products() {
let result = {}
let vm = this;
this.allPartners.map(function(item) {
if (item.id === vm.$route.query.products) {
result = item
}
})
return result;
}
},
async mounted() {
this.fetchPartners();
this.fetchRestaurants();
},
methods: {
...mapActions(['fetchPartners', 'fetchRestaurants']),
getLinkPath(type) {
const products = {
'food-band.json': 'allRestaurants.foodBand',
'pizza-plus.json': 'allRestaurants.pizzaPlus',
'pizza-burger.json': 'allRestaurants.pizzaBurger',
'tanuki.json': 'allRestaurants.tanuki',
'gusi-lebedi.json': 'allRestaurants.gusiLebedi',
'palki-skalki.json': 'allRestaurants.palkiSkalki',
};
return products[type];
}
},
}
</script>