【测试开花】五、项目管理-前端-实现查询、新增功能

2023-11-18

基于 springboot+vue 的测试平台开发继续更新。

一、查询功能

在之前的项目列表接口里,支持使用项目名称模糊查询,现在来实现前端。

1. input 输入框

到组件库里找个输入框:

复制代码,修改代码:

  • v-model: 绑定了下面 data 中的projectQuery.projectName
  • style="width:20%": 调整输入框宽度。
  • size="small": 调整输入框整体大小,参考elementUI组件库对应的文档说明。
  • placeholder: 占位符显示,输入框里的提示信息。
  • clearable: 输入框清空功能。
2. 查询按钮

到组件库里找个输入框:

修改代码:

  • 这里用了一个
    标签把输入框和查询按钮包了起来,方便后续如果有需要整体调整下样式啥的。
  • style="margin-left: 10px"调整了下按钮的左边距,让按钮和输入框之间留出点间隔。
  • @click="fetchData"绑定一个点击事件,点击按钮的时候调用fetchData方法。

测试一下根据项目名称模糊查询,输入:0915,点击查询。

查询功能完成。

二、新增功能

1. 新增按钮

新增接口之前已经实现好了,现在实现前端。

使用这个嵌套了表单的对话框。

这个触发按钮,就改成【新增】按钮,放到【查询】按钮的后面。

效果是这样的:

2. 对话框

新增页面这里只需要输入项目名称和描述即可,所以就是 2 个简单的输入框。

另外,复制代码的时候也需要把组件里需要用到的 data 也拷贝过来,替换成我们自己需要用的。

  • dialogFormVisible,visible属性绑定的值,它接收Boolean,当为true时显示 Dialog 对话框。
  • form 就是保存新增页面里填写的字段值。
  • formLabelWidth 这个控制了这个表单的整体的宽度。

现在修改对话框表单的页面内容:

可以更加自己的要求来调整样式,我的大概如此:

3. 新增数据

点击【保存】按钮,要保存数据到表里,然后关闭弹窗,刷新列表页,展示新增的数据。

(1)添加接口

后端接口已实现,现在添加到 js 文件src/api/projectManagement.js里。

export function addProject(data) {
  return request({
    url: '/bloomtest/project/add',
    method: 'post',
    data: data
  })
}

(2)绑定点击事件

在对话框【保存】按钮上绑定一个点击事件。

<el-button type="primary" @click="add">保 存</el-button>

这里要去掉复制出来的@click="dialogFormVisible = false",只能绑定一个事件,如果要绑定多个,需要使用addEventListener(),后续再说。

(3)add 方法调用接口

在 methods 里增加上面按钮点击事件的方法 add,方法的作用是调用 js 文件里的添加接口。在使用方法之前要先导入进来:

import { getList, addProject } from '@/api/projectManagement'

编写 add 方法:

  • addProject(this.form),需要传入表单的参数。
  • then(),就是当 .then() 前的方法执行完后再执行 then()内部 的程序,这里就是用来处理请求之后的事情。

保存成功提示信息,依然到组件库里寻找,这里就用它:

另外,在这里可以加个判断,当接口返回状态码是20000时,提供保存成功,其他提示保存失败。

关闭对话框,就是修改下 dialogFormVisible 的属性为 fasle:

this.dialogFormVisible = false

刷新列表,我可以再调一次查询方法即可:

this.fetchData()

最后,完整的 add 方法:

测试一下效果,可以正常保存,对话框关闭,提示成功。

但是发现 2 个问题

  • 再次点击新增的时候,对话框里还显示上一次的内容。
  • 列表没排序,新增的数据在后面的页,展示不直观。

解决 问题1

在新增方法里,把表单里的字段值设为空字符串即可:

// 清空表单
    this.form.projectName = ''
    this.form.description = ''

解决 问题2

调整列表接口,增加排序 order by,按照 id 倒序。

最后,重新测试一下新增。

输入内容,保存。

功能完成。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【测试开花】五、项目管理-前端-实现查询、新增功能 的相关文章

随机推荐

  • pyecharts的各个系列配置项设置示例——个人整理与分享

    由于在使用pyecharts时我们有很多对图表的配置项设置需要用到全局配置项和系列配置项 因此在对pyecharts的图表进行介绍之前先进行个人在pyecharts官网对系列配置项学习的整理 因为个人在官网对代码的查看没有特别舒服 其中包含
  • Nuxt3如何使用Tailwindcss?

    最近在Nuxt3项目中使用tailwindcss碰到一些问题 经研究后把问题解决 为避免此类问题特此把解决过程写下来做个记录 Nuxt3官网 tailwindcss官网 创建Nuxt3应用 须确保node js版本大于16 11 Nuxt3
  • 搜索技巧

    搜索技巧 一 完全匹配搜索 里面的就是完全搜索 例如 胡文迪 就会找完全匹配胡文迪三个字的相关结果 如果没有检索到 二 搜索范围限定在标题 intitle xx allintitle xx xx 在查询词前加上intitle xx 如果是多
  • 步进电机 - 构造与动作原理(二)

    第2章 构造与动作原理 2 1 构造 1 基本构造与动作原理 通过简易的示图讲解步进电动机的基本构造和动作原理 基本构造和动作原理 下图为步进电动机简易示图 对线圈L1进行通电时 L1会被磁化 中间部分的磁铁被LI吸引 并于平衡后停止 对线
  • 解决IntelliJ IDEA 项目结构旁边出现 0%classes,0% lines covered

    解决IntelliJ IDEA 项目结构旁边出现 0 classes 0 lines covered 官方文档解答 两种方法 解决IntelliJ IDEA 项目结构旁边出现 0 class 0 lines covered 官方文档解答 F
  • vector 查找/查找和对比结构体元素值

    原地转 http www cplusplus com reference algorithm find if include
  • SP706_MCU监控芯片

    SP706 MCU监控芯片 说明 SP706R S T系列是微处理器 P 监控电路系列 集成了离散解决方案的无数组件 监控 P和数字系统中的电源和电池 SP706R S T系列的功能包括看门狗定时器 P复置 电源故障比较器和手动重置输入 S
  • ELK 性能优化实践

    点击上方蓝色 方志朋 选择 设为星标 回复 666 获取独家整理的学习资料 一 背景介绍 近一年内对公司的 ELK 日志系统做过性能优化 也对 SkyWalking 使用的 ES 存储进行过性能优化 在此做一些总结 本篇主要是讲 ES 在
  • 小程序录音及其动画

    基础功能可以这样写 挺简单的 const recorderManager wx getRecorderManager const innerAudioContext wx createInnerAudioContext Page data
  • 拓世科技集团

    2023年 中国改革开放迎来了45周年 改革春风浩荡 席卷神州大地 45年间 中国特色社会主义伟大事业大步迈入崭新境界 一路上结出了饶为丰硕的果实 中华民族在这45年间的砥砺前行 不仅使中国的经济和社会发展达到了举世瞩目的成就 也在国家民主
  • 通过 ffmpeg 无损剪切/拼接视频

    剪切 拼接视频文件是一种常见需求 在线视频网站现在往往将一个视频文件分割成 n 段 以减少流量消耗 使用 DownloadHelper DownThemAll 这类工具下载下来的往往就是分割后的文件 能实现剪切 拼接视频文件的工具多种多样
  • java.lang.NumberFormatException: null的解决方法

    1 首先附上我的代码 Integer reviewid Integer valueOf request getParameter reviewid System out println reviewid Integer articleid
  • 避免’sudo echo x >’(sudo 重定向) 时’Permission denied’

    避免 sudo echo x gt 时 Permission denied 甲 示例 sudo echo a gt 1 txt bash 1 txt Permission denied 乙 分析 bash 拒绝这么做 说是权限不够 这是因为
  • 【Linux之Shell脚本实战】Linux创建新用户脚本

    Linux之Shell脚本实战 Linux创建新用户脚本 一 脚本要求 二 本地环境介绍 三 配置脚本注释模板 1 编辑 vimrc 文件 2 检查模板生效情况 四 编辑useradd sh 1 新建脚本目录 2 编辑useradd sh脚
  • hibernate注解自动生成数据表

    按习惯来说 一般系统开发都是从数据库开始设计的 但从面向对象开发的角度 系统的设计应该基于对象模型的设计之上 主要考虑对象的设计和逻辑 然后按照对象模型生成数据库结构 利用hibernate的SchemaExport对象可以方便的实现这一点
  • Python数据分析与应用目录

    Python数据分析与应用目录 第1章 Python数据分析概况 1 1 认识数据分析 1 2 熟悉Python数据分析的工具 1 3 Jupyter Notebook 快捷键 第2章 NumPy数值计算基础 2 1 掌握NumPy数组对象
  • 云服务中执行wget,报403

    问题复现 云服务器中配置完nginx后 通过wget测试 报403 解决方法 根目录执行如下命令 chmod R 777 root chmod R 777 root test server chmod R 777 root test ser
  • 在react项目中,使用craco插件进行mobx配置解决方案

    在使用react项目中 不可避免的要使用蚂蚁金服出品的ant desgin前端UI组件 ant desgin推荐使用 craco 一个对 create react app 进行自定义配置的社区解决方案 对 create react app
  • 一台服务器如何部署多个tomcat和项目(最详细的图文教程!!!)

    前言 提示 部署多个项目的方法有很多种 本文记载的是在Windows下 安装多个tomcat通过修改端口来部署项目 Linux部署方式大同小异 第一步 解压tomcat安装包后 复制一份并且重命名 多个tomcat就多复制一份 没有tomc
  • 【测试开花】五、项目管理-前端-实现查询、新增功能

    基于 springboot vue 的测试平台开发继续更新 一 查询功能 在之前的项目列表接口里 支持使用项目名称模糊查询 现在来实现前端 1 input 输入框 到组件库里找个输入框 复制代码 修改代码 v model 绑定了下面 dat