目录

一、SPA项目开发之表单验证

二、SPA项目开发之CRUD


一、SPA项目开发之表单验证

         我们做项目的都关乎到增删改查的功能,在进行增删改查功能之前,我们必须有一个表单验证。

        1、首先先写入表单验证的代码:这里面需要注意的是变量,以及定义方法

    <!-- 编辑界面 --><el-dialog :title="title" :visible.sync="editFormVisible" width="30%" @click="closeDialog"><el-form label-width="120px" :model="editForm" :rules="rules" ref="editForm"><el-form-item label="文章标题" prop="title"><el-input size="small" v-model="editForm.title" auto-complete="off" placeholder="请输入部门名称"></el-input></el-form-item><el-form-item label="文章内容" prop="body"><el-input size="small" v-model="editForm.body" auto-complete="off" placeholder="请输入部门代码"></el-input></el-form-item></el-form><div slot="footer" class="dialog-footer"><el-button size="small" @click="closeDialog">取消</el-button><el-button size="small" type="primary" class="title" @click="submitForm('editForm')">保存</el-button></div></el-dialog>

定义变量以及方法:

变量代码:

 return {
        listData: [],
        title: '',
        editFormVisible: false,
        formInline: {
          page: 1,
          rows: 10,
          total: 0
        },
        editForm: {
          id: 0,
          title: '',
          body: ''
        },

rules规则:如果在增改或者修改时,长度没有达标就会进行提示,这就是表单验证:

 rules: {title: [{required: true,message: '请输入活动名称',trigger: 'blur'},{min: 3,max: 5,message: '长度在 3 到 5 个字符',trigger: 'blur'}],body: [{required: true,message: '请输入文章内容',trigger: 'change'}]}

方法代码:

clearData() {//清除数据的方法editFormVisible: false,this.title = '',this.editForm.id = 0,this.editForm.title = '',this.editForm.body = '';},closeDialog() {//关闭弹出框的方法this.clearData();},handleEdit(index, row) {this.clearData();this.editFormVisible = true;if (row) {//取到当前一行this.title = '编辑窗口',this.editForm.id = row.id,this.editForm.title = row.title,this.editForm.body = row.body;} else {this.title = '新增窗口'}},deleteUser(index, row) {},submitForm(formName) {this.$refs[formName].validate((valid) => {if (valid) {let url;if (this.editForm.id == 0) {url = this.axios.urls.SYSTEM_ARTICLE_ADD;} else {url = this.axios.urls.SYSTEM_ARTICLE_EDIT;}this.axios.post(url, this.editForm).then((resp) => { //前后端交互的代码this.clearData();this.search();}).catch(function(error) {console.log(error);});} else {console.log('error submit!!');return false;}});},

做好表单验证就是为后面的增删改查打好基础。

二、SPA项目开发之CRUD

下面分享的是增删改,查询在上次博客中已经分享了

          一、增加:

                 1、思路:

             1、点击增加时,要弹出一个提示框,里面包含着文章标题和文章内容

             2、表单验证有限制,如果长度没有达到要求时就会提示。

             3、当我点击增加按钮时就会调用增加方法

                 2、代码:

1、点击增加时,要弹出一个提示框,里面包含着文章标题和文章内容:

handleEdit(index, row) {
        this.clearData();
        this.editFormVisible = true;//弹出提示框
        if (row) {//取到当前一行
          this.title = '编辑窗口',
            this.editForm.id = row.id,
            this.editForm.title = row.title,
            this.editForm.body = row.body;
        } else {
          this.title = '新增窗口'
        }
      },

2、表单验证有限制,如果长度没有达到要求时就会提示:

 rules: {title: [{required: true,message: '请输入活动名称',trigger: 'blur'},{min: 3,max: 5,message: '长度在 3 到 5 个字符',trigger: 'blur'}],body: [{required: true,message: '请输入文章内容',trigger: 'change'}]

3、当我点击增加按钮时就会调用增加方法:

url = this.axios.urls.SYSTEM_ARTICLE_ADD;//增加的方法。

增加的效果:

现在是161条数据:

 现在增加一条数据:

现在有163条数据:表明增加成功。

          二、修改:

                 1、思路:

                  1、点击一条数据进行修改,前提是要进行选中那一行

                  2、选中之后,由于和增加是调用同一个方法handleEdit(里面有两个参数),且弹出的是同一个弹出框,区别在于修改要选中行数,而增加不要选中行数

                  3、最后点击修改是调用后台方法,进行修改

1、点击一条数据进行修改,前提是要进行选中那一行

2、选中之后,由于和增加是调用同一个方法handleEdit(里面有两个参数),且弹出的是同一个弹出框,区别在于修改要选中行数,而增加不要选中行数

代码:

 handleEdit(index, row) {this.clearData();this.editFormVisible = true;//弹出提示框if (row) {//取到当前一行this.title = '编辑窗口',this.editForm.id = row.id,this.editForm.title = row.title,this.editForm.body = row.body;} else {this.title = '新增窗口'}},

3、最后点击修改是调用后台方法,进行修改:

url = this.axios.urls.SYSTEM_ARTICLE_EDIT;

          三、删除:

            1、首先要写好删除的方法,到后台调用删除方法

            2、其次最重要的是删除方法要传一个id,进行删除,删除之前可以弹出一个询问框,进行询问,如果确定,就会删除,如果取消,就不会删除,这也同时满足客户需求 

首先要写好删除的方法,到后台调用删除方法

 deleteUser(index,row) {
        this.editForm.id=row.id;//获取到这一行的id(其次最重要的是删除方法要传一个id,进行删除)
        let url = this.axios.urls.SYSTEM_ARTICLE_DEL;//到后台调用删除方法
        this.axios.post(url, this.editForm).then((resp) => { //前后端交互的代码
          this.clearData();//使用时清空数据
          this.search();//删除之后进行查询
        }).catch(function(error) {
          console.log(error);
        });
      },

总体代码:

deleteUser(index, row) {this.$confirm('确定要删除吗?', '信息', {confirmButtonText: '确定',cancelButtonText: '取消',type: 'warning'}).then(() => {deptDelete(row.deptId).then(res => {if (res.success) {this.editForm.id=row.id;//获取到这一行的idlet url = this.axios.urls.SYSTEM_ARTICLE_DEL;//到后台调用删除方法this.axios.post(url, this.editForm).then((resp) => { //前后端交互的代码this.clearData();//使用时清空数据this.search();//删除之后进行查询}).catch(function(error) {console.log(error);});this.$message({type: 'success',message: '该记录已删除!'})this.getdata(this.formInline)} else {this.$message({type: 'info',message: res.msg})}}).catch(err => {this.loading = falsethis.$message.error('该记录删除失败,请稍后再试!')})}).catch(() => {this.$message({type: 'info',message: '已取消删除'})})},

当我点击删除时,就会先弹出一个询问框:

当我点击确定后,该条数据就被删除了。

 今天的知识就分享到这里了,希望对你有所帮助!

SPA项目开发之CRUD+表单验证相关推荐

  1. SPA项目开发(CRUD表单验证)

    目录 一.表单验证 二.增删改 一.表单验证 步骤: ①.将以下拷入Articles.vue中分页条下面 <!-- 编辑界面 --><el-dialog :title="t ...

  2. python嵌套html开发gui_python GUI库图形界面开发之PyQt5表单布局控件QFormLayout详细使用方法与实例...

    PyQt5布局控件QFormLayout简介 QFormLayout是label-field式的表单布局,顾明思议,就是实现表单方式的布局,表单是提示用户进行交互的一种模式,主要有两列组成,第一列用于 ...

  3. php 表单提交2次,微信开发之php表单微信中自动提交两次问题解决办法

    前言: 最近做微信开发,在微信中访问PHP页面,页面中有个表单.测试发现偶尔会出现表单被自动提交两次的情况,导致流程出错. 问题原因 暂时未找到原因,不过怀疑跟微信本身的机制有关. 解决方法 用ses ...

  4. JSP开发之JSP 表单处理(GET 方法POST 方法)

    我们在浏览网页的时候,经常需要向服务器提交信息,并让后台程序处理,通常使用的是 GET 和 POST 方法向服务器提交数据. 其中,GET方法将请求的编码信息添加在网址后面,网址与编码信息通过&quo ...

  5. spa项目开发之jwt验证码实现

    实现思路及细节 思路: 登录界面向后台请求验证码,后台就先调用随机函数生成验证码,并且根据验证码生成一张图片,以 base64 字符串的形式传到前台,这时我们还要生成verificationJwt令牌 ...

  6. SPA项目开发之JWT

    1. JWT是什么 JSON Web Token (JWT),它是目前最流行的跨域身份验证解决方案 2. 为什么使用JWT JWT的精髓在于:"去中心化",数据是保存在客户端的. ...

  7. spa项目开发之vue+elementUi实现tab页

    文章目录 实现tab页的具体思路: ①当点击左侧导航菜单时 ②操作上侧的tab页时 实现子tab页 当点击一个菜单栏时,出一个tab 实现tab页的具体思路: ①当点击左侧导航菜单时 获取菜单名,把它 ...

  8. 微信小程序插件---表单验证篇

    微信小程序插件---表单验证篇 项目下载地址 WxValidate - 表单验证 插件介绍 该插件是参考 jQuery Validate 封装的,为小程序表单提供了一套常用的验证规则,包括手机号码.电 ...

  9. vue iview表单验证,清除表单验证/去掉表单验证的*号

    前言: 最近写isop项目遇到的问题, 表单验证,默认的iview写法加上prop,在data里面定义,input前面就会有个红色的号,表示这里必填加了验证,测试觉得这个号碍眼,让我去掉,第一次遇到这 ...

最新文章

  1. 央视与遗传发育所合拍《锄禾者新说》科教片
  2. Python基础之:Python中的异常和错误
  3. mingw+libpython安装记录
  4. 榆落微时光社区小程序源码V1.0.35
  5. [bzoj2648]SJY摆棋子(带插入kd-tree)
  6. 统计php代码执行情况,PHP代码执行函数总结
  7. Python 标准库 —— 文件解压(zip、gz、pkl、tar)
  8. Golang(八)go modules 学习
  9. arcpy 查看arcgis的产品类型、产品许可与安装信息
  10. nsis检测vc2013运行环境vcredist_x86.exe是否已经安装
  11. java医院门诊管理系统
  12. matlab输出动态gif图片
  13. 数据结构试卷及答案(一)
  14. python绘制风玫瑰图_用Python matplotlib 怎么画风向玫瑰图 能给出程序的
  15. Namenode处于安全模式时,对hadoop进行查看操作,edits_inprogress_txid中没有事物事件的增加,txid没有增加?
  16. github官网进不去解决方案
  17. Java web网页版仿QQ实现在线聊天功能系统
  18. 银行利息计算公式推导(存款,贷款)
  19. 计算机房摆放布局,【机房】强弱电机房位置大小及布置(附案例)
  20. oracle10g搭建,Oracle 10g环境的搭建手册

热门文章

  1. mezzanine-一个功能强大且易于扩展性的Django框架构建的内容管理平台
  2. 怎么将计算机的触摸鼠标锁定,戴尔电脑怎么将触控板锁定?
  3. NLP - Gensim
  4. Vuecli中添加elementui插件
  5. 如何通过学习实现人生的逆袭!
  6. 头条php,基于PHP的免费新闻头条接口查询
  7. 计算机第一次开机进行重要设置很慢,为什么电脑第一次开机后总会自动关机,第二次开...
  8. 高等代数教材及学习指导书的推荐
  9. Java里的char类型能不能存储一个中文字符?
  10. LaTex论文排版 | (25) Latex 字母上面加符号 波浪线 横线 角号等