当前位置:首页 > VUE

vue组件实现简单商品

2026-02-21 13:01:50VUE

Vue 组件实现简单商品展示

商品数据模型 商品数据通常包含名称、价格、图片、描述等基础信息。在 Vue 中可以通过 dataprops 传递:

data() {
  return {
    product: {
      name: '示例商品',
      price: 99.99,
      image: 'https://example.com/product.jpg',
      description: '这是一个示例商品描述'
    }
  }
}

基础组件结构 使用 template 定义商品卡片布局,通过插值语法绑定数据:

<template>
  <div class="product-card">
    <img :src="product.image" :alt="product.name">
    <h3>{{ product.name }}</h3>
    <p class="price">¥{{ product.price.toFixed(2) }}</p>
    <p class="description">{{ product.description }}</p>
    <button @click="addToCart">加入购物车</button>
  </div>
</template>

样式处理 通过 scoped 样式隔离组件 CSS:

<style scoped>
.product-card {
  border: 1px solid #ddd;
  padding: 15px;
  max-width: 300px;
}
.price {
  color: #f56c6c;
  font-weight: bold;
}
</style>

交互功能实现methods 中定义购物车交互逻辑:

methods: {
  addToCart() {
    this.$emit('add-to-cart', this.product)
  }
}

组件复用方案 通过 props 实现动态数据传入,使组件可复用:

props: {
  product: {
    type: Object,
    required: true
  }
}

完整组件示例 整合后的单文件组件 (SFC) 示例:

<template>
  <div class="product-card">
    <img :src="product.image" :alt="product.name">
    <h3>{{ product.name }}</h3>
    <p class="price">¥{{ product.price.toFixed(2) }}</p>
    <p class="description">{{ product.description }}</p>
    <button @click="addToCart">加入购物车</button>
  </div>
</template>

<script>
export default {
  props: {
    product: {
      type: Object,
      required: true
    }
  },
  methods: {
    addToCart() {
      this.$emit('add-to-cart', this.product)
    }
  }
}
</script>

<style scoped>
.product-card {
  border: 1px solid #ddd;
  padding: 15px;
  max-width: 300px;
}
.price {
  color: #f56c6c;
  font-weight: bold;
}
</style>

vue组件实现简单商品

分享给朋友:

相关文章

vue实现组件

vue实现组件

Vue 实现组件的方法 Vue 中实现组件可以通过多种方式,包括全局注册、局部注册、单文件组件(SFC)等。以下是常见的实现方法。 全局注册组件 全局注册的组件可以在任何 Vue 实例或组件中使用…

vue VUE实现日历组件功能

vue VUE实现日历组件功能

Vue 日历组件实现方法 基础日历结构 使用Vue的模板语法构建日历的HTML结构,通常包含头部(年月显示、切换按钮)和日历表格(星期标题和日期格子)。 <template> <…

vue实现日历组件

vue实现日历组件

Vue 日历组件实现步骤 基础结构搭建 使用Vue 3的Composition API或Options API创建组件框架。核心结构包括年份/月份切换按钮、星期标题栏和日期网格。 <temp…

vue实现组件刷新

vue实现组件刷新

强制重新渲染组件 使用 this.$forceUpdate() 方法可以强制 Vue 实例重新渲染,但不会更新子组件。适用于依赖非响应式数据的情况。 methods: { refreshCom…

vue实现搜索组件

vue实现搜索组件

Vue 实现搜索组件的方法 基础搜索组件实现 创建基础搜索组件需要包含输入框和搜索按钮。在Vue中可以使用v-model绑定输入值,通过@click或@keyup.enter触发搜索。 <t…

vue基础组件实现

vue基础组件实现

Vue 基础组件实现 组件定义 使用 Vue.component 全局注册或局部注册组件。全局注册适合通用组件,局部注册适合特定页面使用的组件。 // 全局注册 Vue.component('my-…