购物车组件是电子商务网站中必不可少的元素,用于管理用户在购物过程中添加的商品。它可以显示商品列表、数量、价格和总金额,并提供删除商品和提交订单的功能。
此 Vue 3 购物车组件具有以下基本功能:
const cart = ref([
{
id: 1,
name: "Air Jordan XXXV Trainer",
image: "https://source.unsplash.com/random/200x200",
price: 137.99,
count: 1,
},
// ...
]);
购物车数据是一个响应式数组,包含每个商品的信息,包括 ID、名称、图片、价格和数量。
<div v-for="item in cart" :key="item.id" class="flex items-center justify-between border-b border-gray-200 pb-4">
<!-- 商品信息 -->
<!-- ... -->
<!-- 商品数量和删除按钮 -->
<div class="flex items-center">
<van-stepper v-model="item.count" :min="1" :max="10" :step="1" class="w-20" />
<van-icon name="delete" size="20px" color="#000" @click="deleteItem(item)" />
</div>
</div>
购物车列表使用 v-for
循环渲染每个商品,并显示商品信息和数量调节器。
const deleteItem = (item) => {
cart.value = cart.value.filter((i) => i.id !== item.id);
};
deleteItem
函数从购物车数据中删除指定的商品。它使用 filter
方法创建了一个新数组,其中不包含要删除的商品。
const submit = () => {
alert("提交成功");
};
submit
函数用于提交订单。在实际应用中,它通常会将购物车数据发送到服务器进行处理。
通过开发这个购物车组件,我们了解了 Vue 3 中使用响应式数据、组件化和事件处理的基本概念。