当前位置:首页 > VUE

vue实现搜索商品

2026-03-28 20:29:35VUE

实现商品搜索功能(Vue)

数据准备

创建商品数据数组,包含名称、价格等字段

data() {
  return {
    products: [
      { id: 1, name: '苹果', price: 5.99 },
      { id: 2, name: '香蕉', price: 3.49 },
      { id: 3, name: '橙子', price: 4.99 }
    ],
    searchQuery: ''
  }
}

搜索输入框

在模板中添加搜索输入框,绑定searchQuery

<template>
  <div>
    <input 
      v-model="searchQuery" 
      placeholder="搜索商品..."
    >
  </div>
</template>

计算属性过滤

使用计算属性实现搜索逻辑

vue实现搜索商品

computed: {
  filteredProducts() {
    const query = this.searchQuery.toLowerCase()
    return this.products.filter(product => 
      product.name.toLowerCase().includes(query)
    )
  }
}

显示搜索结果

在模板中展示过滤后的商品列表

<ul>
  <li v-for="product in filteredProducts" :key="product.id">
    {{ product.name }} - ¥{{ product.price }}
  </li>
</ul>

优化搜索性能

添加防抖函数减少频繁搜索

vue实现搜索商品

methods: {
  debounceSearch: _.debounce(function() {
    this.filteredProducts = this.products.filter(product => 
      product.name.toLowerCase().includes(this.searchQuery.toLowerCase())
    )
  }, 300)
}

多字段搜索

扩展搜索功能支持价格范围

computed: {
  filteredProducts() {
    const query = this.searchQuery.toLowerCase()
    return this.products.filter(product => 
      product.name.toLowerCase().includes(query) || 
      product.price.toString().includes(query)
    )
  }
}

空状态提示

添加无结果时的提示信息

<p v-if="filteredProducts.length === 0 && searchQuery">
  没有找到匹配的商品
</p>

标签: 商品vue
分享给朋友:

相关文章

vue 实现打印

vue 实现打印

Vue 实现打印功能的方法 在Vue项目中实现打印功能,可以通过以下几种方式实现: 使用window.print()方法 通过调用浏览器的原生打印API实现基础打印功能,适用于简单内容打印。 //…

vue实现ssr

vue实现ssr

Vue 实现 SSR(服务端渲染) Vue 的服务端渲染(SSR)允许在服务器端生成完整的 HTML 内容,再发送到客户端,提升首屏加载速度和 SEO 友好性。以下是实现 Vue SSR 的关键步骤和…

轮播vue实现

轮播vue实现

使用 Vue 实现轮播功能 基础轮播实现 安装依赖(如使用 Swiper): npm install swiper vue-awesome-swiper 组件代码示例: <templ…

vue事件实现

vue事件实现

Vue 事件实现方法 在Vue中,事件处理是通过v-on指令或@简写来实现的。以下是几种常见的事件处理方式: 使用v-on指令绑定事件 <button v-on:click="handleC…

vue实现CRUD

vue实现CRUD

Vue 实现 CRUD 操作 Vue 提供了响应式数据绑定和组件化开发能力,结合后端 API 可以轻松实现 CRUD(增删改查)功能。以下是基于 Vue 3 和 Axios 的完整实现方案。 安装依…

vue实现 弹窗

vue实现 弹窗

Vue 实现弹窗的基本方法 使用 Vue 实现弹窗可以通过多种方式,包括组件化、指令、插件等。以下是几种常见的实现方法。 组件化实现弹窗 创建一个独立的弹窗组件,通过 props 控制显示与隐藏。…