Всем привет! Подскажите, пожалуйста, что я делаю не так? По идее при таком подключении должно вывестись три компонента, но по-моему идет инициализация только дива с айдишником и выводится только один компонент
(это подключение в файле pug)
block contentBody
.cells
.cell.cell-xl-8
#app-cart(data-url="http://localhost:3000/products")
<app-cart><app-cart/>
<app-cart><app-cart/>
<app-cart><app-cart/>
здесь я создаю компонент(файл -app-cart.vue):
cart.component("app-cart", {
data() {
return {
URL: document.getElementById("app-cart").dataset.url
}
},
<template>
<cart
v-if="PRODUCTS.length"
:URL="URL"
:CONSTANTS="CONSTANTS"/>
<cart-empty v-else/>
</template>
<script>
import cart from "./components/cart.vue"
import cartEmpty from "./components/cart-empty.vue"
import {mapActions, mapGetters} from "vuex"
export default {
name: "app-cart",
components: { cart, cartEmpty },
computed: {
...mapGetters([
"PRODUCTS",
"CONSTANTS"
])
},
methods: {
...mapActions([
"SET_PRODUCTS_TO_STATE",
"DEACTIVATE_CART_STATUS",
"DELETE_ALL_PRODUCTS_FROM_CART",
"DEFINE_ENCODING",
"SHOW_CART_FORM"
])
},
mounted() {
this.SHOW_CART_FORM();
this.SET_PRODUCTS_TO_STATE();
this.DEFINE_ENCODING();
}
}
</script>
});
а в js файле его инициализирую(cart-vue.js)
import { createApp } from "vue";
import App from "./app-cart.vue";
import store from "./vuex/store.js";
let cartApp = document.querySelector("#app-cart");
if (cartApp) {
const cart = createApp(App, {props: ["data-url"]})
.use(store)
.mount("#app-cart");
}