商品分页,商品模糊查询

一、商品分页

引入分页

定义分页主件的参数

 

在请求url上拼接参数

 定义改变当前页码后触发的事件,把当前页码的值给到分页表单,重新查询

二、商品查询(以商品的名称查询name为例)

 引入elementplus的from表单组件

定义一个FormData函数用于存放表单对象 

 

定义按钮的点击事件

 在请求中拼接参数

 后端实现模糊查询,在查询语句中使用函数拼接

问题:

直接点击查询按钮,即使不传参数也会在查询语句中拼接 

解决方法:

1、在后端查询语句判断是否等于空

2、 在前端加上三元运算符进行判断

 三、代码:

<template><!-- 用于查询的表单 --><el-form :inline="true" :model="FormData"><el-form-item label=""><el-form-item label="商品查询"><el-input v-model="FormData.name" /></el-form-item></el-form-item><el-form-item><el-button type="primary" @click="onQuery">查询</el-button></el-form-item></el-form><!-- 用于存放数据的表格 --><el-table :data="tableData" style="width: 100%"><el-table-column prop="id" label="商品id" width="150" /><el-table-column prop="name" label="商品名称" width="120" /><el-table-column prop="categoryId" label="商品分类" width="120" /><el-table-column fixed="right" label="Operations" min-width="120"><template #default><el-button type="primary" size="small">修改</el-button><el-button type="danger" size="small">删除</el-button></template></el-table-column></el-table><br/><!-- 引入elementPluse分页组件 --><el-pagination background layout="prev, pager, next" :total=pageDate.total :page-size = pageDate.pageSize :current-page ="pageDate.pageNum" @current-change="changePage"/>
</template><script setup lang="ts">import {ref,onMounted, reactive} from 'vue';import http from '@/http';const tableData = ref<any>([])onMounted(()=>{//调用查询商品信息函数callProductApi()})const FormData = reactive({name:"",
})const onQuery = () =>{//点击按钮时,重新查询数据刷新页面callProductApi()console.log(FormData.name)
}const changePage = (pageNum: number) =>{console.log(pageNum)pageDate.pageNum=pageNum//改变了当前页的值,重新查询刷新页面callProductApi()}const pageDate = reactive({total:10,pageSize:2,pageNum:1, })//定义查询商品信息函数const callProductApi = () =>{let name = FormData.name==''? undefined :FormData.namehttp.get('/api/product',{pageNum: pageDate.pageNum,pageSize:pageDate.pageSize,name:name}).then(res =>{tableData.value=res.itmesconsole.log(res)pageDate.total = res.total})}</script>

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/43700.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实现在列表框内及列表框间实现数据拖动:在工作表界面窗体的加载

《VBA高级应用30例》&#xff08;版权10178985&#xff09;&#xff0c;是我推出的第十套教程&#xff0c;教程是专门针对高级学员在学习VBA过程中提高路途上的案例展开&#xff0c;这套教程案例与理论结合&#xff0c;紧贴“实战”&#xff0c;并做“战术总结”&#xff0c;以…

three-platformize 微信小程序 uniapp 使用截图功能

最近需要将3d场景进行截图&#xff0c;但是网上的各种各样&#xff0c;看的我一团乱麻&#xff0c;因此在解决完后就将这些简单的分享一下&#xff1b; 原理&#xff1a;将3维场景的那个canvas中的像素提取出来&#xff0c;找一个空的canvas二维画布放上去&#xff0c;然后用二…

jitsi 使用JWT验证用户身份

前言 Jitsi Meet是一个很棒的会议系统,但是默认他运行所有人创建会议,这样在某种程度上,我们会觉得他不安全,下面我们就来介绍下使用JWT来验证用户身份 方案 卸载旧的lua依赖性sudo apt-get purge lua5.1 liblua5.1-0 liblua5.1-dev luarocks添加ubuntu的依赖源,有则不需…

运维锅总详解设计模式

本首先简介23种设计模式&#xff0c;然后用Go语言实现这23种设计模式进行举例分析。希望对您理解这些设计模式有所帮助&#xff01; 一、设计模式简介 设计模式是软件设计中用于解决常见设计问题的一套最佳实践。它们不是代码片段&#xff0c;而是解决特定问题的通用方案。设…

Xilinx 的aarch32 aarch64 armr5 编译器区别

对于 Xilinx 设备&#xff0c;特别是使用 Vivado 或 Vitis IDEs 开发的那些&#xff0c;针对不同 ARM 架构如 aarch32、aarch64 和 ARM R5&#xff0c;使用的编译器也会有所不同。以下是这些架构在 Xilinx 开发环境中常用的编译器&#xff1a; 1. AArch32 (ARM 32位) 对于 Xi…

给元素的margin-top/top设置百分比,是基于什么进行计算?

1、普通元素 margin-top&#xff1a;基于父元素的宽度计算 2、relative元素 margin-top&#xff1a;基于自身的宽度计算top&#xff1a;基于自身的宽度计算 3、absolute元素 margin-top&#xff1a;基于最近一级的非static元素的宽度计算top&#xff1a;基于最近一级的非s…

Apache AGE 安装部署

AGE概述 概述 我们可以通过源码安装、拉取docker镜像运行、直接使用公有云三种方式中的任意一种来使用Apache AGE 获取 AGE 发布版本 可以在 https://github.com/apache/age/releases 找到发布版本和发布说明。 源代码 源代码可以在 https://github.com/apache/age 找到…

PowerShell install 一键部署mysql 9.0.0

mysql 前言 MySQL 是一个基于 SQL(Structured Query Language)的数据库系统,SQL 是一种用于访问和管理数据库的标准语言。MySQL 以其高性能、稳定性和易用性而闻名,它被广泛应用于各种场景,包括: Web 应用程序:许多动态网站和内容管理系统(如 WordPress)使用 MySQL 存…

vite项目使用qiankun构建hash路由微前端

文章目录 前言一、主应用使用react18 react-router-dom61、项目安装2、主应用中注册微应用3、主应用中设置路由和挂载子应用的组件 二、创建react18 react-router-dom6子应用1、项目安装2、修改子应用 vite.config.ts3、修改子应用 main.tsx,区分qiankun环境和独立部署环境4、…

mybatis-plus中的方法的作用

在MyBatis-Plus中&#xff0c;这些方法是用于构建查询条件或排序条件的工具&#xff0c;它们大多属于com.baomidou.mybatisplus.core.conditions.query.QueryWrapper、UpdateWrapper或类似的包装器类中&#xff0c;用于构建复杂的SQL查询或更新语句。这些方法通过链式调用的方式…

【割点 C++BFS】2556. 二进制矩阵中翻转最多一次使路径不连通

本文涉及知识点 割点 图论知识汇总 CBFS算法 LeetCode2556. 二进制矩阵中翻转最多一次使路径不连通 给你一个下标从 0 开始的 m x n 二进制 矩阵 grid 。你可以从一个格子 (row, col) 移动到格子 (row 1, col) 或者 (row, col 1) &#xff0c;前提是前往的格子值为 1 。如…

日志无界:Eureka中服务的分布式日志记录策略

日志无界&#xff1a;Eureka中服务的分布式日志记录策略 引言 在微服务架构中&#xff0c;服务的分布式日志记录对于监控、故障排查和安全审计至关重要。Eureka作为Netflix开源的服务发现框架&#xff0c;虽然本身不直接提供日志记录功能&#xff0c;但可以与其他日志记录工具…

AE常用工具

目录 图形工具&#xff08;快捷键Q&#xff09; 选取工具&#xff08;快捷键V&#xff09; 抓手工具&#xff08;快捷键H或空格&#xff09; 放缩工具&#xff08;快捷键Z或滚动滑轮&#xff09; 图形工具&#xff08;快捷键Q&#xff09; 按住alt并点击&#xff0c;可切换…

单目深度估计部署 rk3588

搞了一小段时间的单目深度估计&#xff0c;目标是在板端部署用起来&#xff0c;但由于基于开源数据或开源模型&#xff0c;将模型估计的相对深度转换成绝对深度误差非常大&#xff08;或许是转换方法有问题&#xff09;&#xff0c;另一方面如何具体的在项目中用起来还没好的想…

huggingface登不进去?

HF-Mirror点这个镜像网站

二重积分 - 包括计算方法和可视化

二重积分 - 包括计算方法和可视化 flyfish 计算在矩形区域 R [ 0 , 1 ] [ 0 , 2 ] R [0, 1] \times [0, 2] R[0,1][0,2] 下&#xff0c;函数 z 8 x 6 y z 8x 6y z8x6y 的二重积分。这相当于计算曲面 z 8 x 6 y z 8x 6y z8x6y 与 xy 平面之间的体积。 二重积分…

【LeetCode】赎金信

目录 一、题目二、解法完整代码 一、题目 给你两个字符串&#xff1a;ransomNote 和 magazine &#xff0c;判断 ransomNote 能不能由 magazine 里面的字符构成。 如果可以&#xff0c;返回 true &#xff1b;否则返回 false 。 magazine 中的每个字符只能在 ransomNote 中使…

UMI HTTP接口手册

Translate to English 命令行手册&#xff1a; README_CLI.mdHTTP接口手册&#xff1a; README_HTTP.md HTTP接口手册 &#xff08;本文档仅适用于 Umi-OCR 最新版本。旧版本请查看 Github备份分支 中对应版本的文档。&#xff09; 基础说明 如上图&#xff0c;必须允许HTT…

MySQL篇五:基本查询

文章目录 前言1. Create1.1 单行数据 全列插入1.2 多行数据 指定列插入1.3 插入否则更新1.4 替换 2. Retrieve2.1 SELECT 列2.1.1 全列查询2.1.2 指定列查询2.1.3 查询字段为表达式2.1.4 为查询结果指定别名2.1.5 结果去重 2.2 WHERE 条件2.2.1 练习 2.3 结果排序2.3.1 练习 …

Java内存区域与内存溢出异常(补充)

2.2.5 方法区 方法区(Method Area)与Java堆一样&#xff0c;是各个线程共享的内存区域&#xff0c;它用于存储已被虚拟机加载的类型信息、常量、静态变量、即时编译器编译后的代码缓存等数据。虽然《Java虚拟机规范》中把方法区描述为堆的一个逻辑部分&#xff0c;但是它却有一…