vue3多条件搜索功能

这篇具有很好参考价值的文章主要介绍了vue3多条件搜索功能。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

       搜索功能在后台管理页面中非常常见,本篇就着重讲一下vue3-admin-element框架中如何实现一个顶部多条件搜索功能

vue3多条件搜索功能,前端,Vue,vue.js,javascript,前端,elementui

一、首先需要在vue页面的<template></template>中写入对应的结构

        <!-- 搜索 -->
        <div style="display: flex; justify-content: space-between; width: 85%;padding-top: 20px;">
            <div style="display: flex; justify-content: space-between; width: 86%;margin-left: 7%;">
                <el-form-item label="商品名称:" prop="goods_name">
                    <el-input v-model="searchParam.goods_name" placeholder="请输入商品名称" />
                </el-form-item>
                <el-form-item label="隶属店铺:" prop="shoptitle">
                    <el-input v-model="searchParam.shoptitle" placeholder="请输入隶属店铺" />
                </el-form-item>
            </div>
        </div>
        <div @click="refreshList">
            <div style="display: flex;justify-content: flex-end; width: 80%; margin-left: 10%;margin-top: 10px;">
                <el-button type="primary" :icon="Search" style=" padding-left: 10px; padding-right:10px;">搜索</el-button>
            </div>
        </div>

二、其中searchParam是我定义的需要搜索的字段

//   搜索字段
const searchParam = reactive({
    goods_name: '',
    shoptitle: ''
})

三、搜索按钮绑定的函数

//搜索
const refreshList = () => {
    console.log(searchParam);//搜索数据的对象
    console.log(arr.value);//表里的数据
    let obj = {}
    obj = {
        goods_name: searchParam.goods_name,
        shoptitle: searchParam.shoptitle
    }
    // 排除空
    for (let key in obj) {
        if (obj[key] == '' || obj[key] == null) {
            delete obj[key]
        }
    }
    // @param condition 过滤条件
    // @param data 需要过滤的数据
    let filter = (condition, data) => {
        return data.filter(item => {
            return Object.keys(condition).every(key => {
                return String(item[key]).toLowerCase().includes(
                    String(condition[key]).trim().toLowerCase())
            })
        })
    }
    let data = filter(obj, arr.value);
    console.log(data);
    if (data != '') {
        arr.value = data
    } else {
        ElMessage({
            type: 'error',
            message: `没有相关信息`,
        });
        data = [];
        arr.value = data;
    }
}

其中obj是要搜索的字段对应的对象,arr是从接口获取的列表数据源。文章来源地址https://www.toymoban.com/news/detail-639839.html

到了这里,关于vue3多条件搜索功能的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue+element ui 表格添加多个搜索条件筛选(前端查询)

    filterList 为筛选后的数据,可以重新给tableData赋值,赋值后如果遇到表格数据不刷新的情况,可以给table加上一个随机的key。这样可以解决重新赋值页面不刷新的情况。

    2024年02月16日
    浏览(41)
  • elementUI之下拉选项加多选框功能实现vue3+ts

    根据 @牛先森家的牛奶 的代码修改后实现 具体参考原博主文章,这里只对部分细节调整,记录一下

    2024年02月17日
    浏览(48)
  • 前端技术Html,Css,JavaScript,Vue3

    1.基本标签 2.文本格式化 3.链接 4.图片 5.无序列表 6.有序列表 7.表格 8.表单 1.选择器 2.文本和字体 3.链接 4.隐藏 5.定位position 6.浮动 7.对齐 8.图像 1.输出 2.函数 3.常用事件 4.DOM 5.改变Html 6.DOM 元素 (节点) 尾部创建新的 HTML 元素 (节点) - appendChild() 头部创建新的 HTML 元素 (节点)

    2024年02月13日
    浏览(53)
  • 【前端技术】Vue3 01:初识 Vue.js

    Vue 可以说是非常流行了,至少在国内是这样,他是个轻量级的 JavaScript 框架,非常适合构建大型和中小型的 Web 应用程序,如果想和前端打交道,应该绕不过这个框架吧。 目录 1 Vue.js 介绍 2  IDE 选择 2.1 vscode 2.2 WebStorm 2.3 Eclipse 3  创建 Vue 应用 3.1 本地脚手架创建 ① 安装

    2024年02月02日
    浏览(64)
  • vue3+ts+elementui-plus二次封装树形表格实现不同层级展开收起的功能

    一、TableTreeLevel组件 

    2024年02月15日
    浏览(58)
  • 前端(四)——vue.js、vue、vue2、vue3

    😊博主:小猫娃来啦 😊文章核心: vue.js、vue、vue2、vue3从全局到局部 Vue.js是一款流行的JavaScript框架 vue,vue2,vue3都是vue.js的不同版本。 Vue:Vue.js的第一个版本,也称为Vue 1.x。它于2014年首次发布,并获得了广泛的应用和认可。 Vue2:Vue.js的第二个版本,也称为Vue 2.x。它在Vu

    2024年02月12日
    浏览(79)
  • Vue前端:几种搜索框功能实现

    相信很多朋友遇到需要在网页上增加一个搜索框的功能,本文简单介绍两种搜索框的实现。 搜索框的功能一般分为: (1)即时检索,即搜索框输入内容自动检索,会随着搜索内容的不断输入,改变界面的显示 (2)点击搜索按钮再开始搜索 以下分别介绍这两种搜索框的简单

    2024年02月02日
    浏览(41)
  • vue3使用高德地图实现点击获取经纬度以及搜索功能

     话不多说直接上干活 在此之前你需要有高德地图的 key,这个自己去申请即可 1,首先需要在终端安装 2,准备一个容器 3,在需要使用的页面引入刚才安装的 4, 5,绑定input框 最后附上css代码 ​​​​​​​这个时候就已经可以了

    2024年02月12日
    浏览(45)
  • Vue3+Vite连接高德地图JS API——地图显示、输入搜索

    1、进入高德地图API官网(https://lbs.amap.com/): 2、注册登录。 3、进入控制台。 4、点击“应用管理”,点击“我的应用”,创建新应用。 5、添加Key,服务平台选择“Web端(JS API)”,白名单不要填写,勾选阅读并同意。 点击提交后,就能看到Key已经生成,记住这里的Key和安

    2024年01月17日
    浏览(47)
  • 前端HTML、CSS、JS、VUE3 汇总

    学习https://developer.mozilla.org/zh-CN/docs/Learn/CSS 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 使用VS Code运行前端代码 在VS Code上安装前端插件 正在更新中~ ✨ 提示:这里可以添加本文要记录的大概内容: 学习路线 知识定位 HTML基础 标签、表格、表单、

    2024年02月13日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包