<script>
import { defineStore } from 'pinia'
import type { AccessoryPurchaseInfo, ShoppingCart } from '~/types'
export const useShoppingStore = defineStore('shop', {
state: () => ({
cart: {
accessories: [],
brasero_computed_price: 0,
brasero: {}
} as ShoppingCart
}),
totalPrice(state) {
let accessoriesPrice = 0
for (const accessory of state.cart.accessories) {
accessoriesPrice = accessoriesPrice + accessory.displayed_price
}
return accessoriesPrice + state.cart.brasero_computed_price
}
},
actions: {
addAccessory(accessory: AccessoryPurchaseInfo) {
console.log(accessory, 'from index')
console.log(this.cart)
this.cart.accessories.push(accessory)
}
},
})
<script>
import { defineStore } from 'pinia'
import type { AccessoryPurchaseInfo, ShoppingCart } from '~/types'
export const useShoppingStore = defineStore('shop', {
state: () => ({
cart: {
accessories: [],
brasero_computed_price: 0,
brasero: {}
} as ShoppingCart
}),
totalPrice(state) {
let accessoriesPrice = 0
for (const accessory of state.cart.accessories) {
accessoriesPrice = accessoriesPrice + accessory.displayed_price
}
return accessoriesPrice + state.cart.brasero_computed_price
}
},
actions: {
addAccessory(accessory: AccessoryPurchaseInfo) {
console.log(accessory, 'from index')
console.log(this.cart)
this.cart.accessories.push(accessory)
}
},
})