本文为大家分享了vue增删改查的简单操作,供大家参考,具体内容如下
我们把这些用户信息保存到list的数组中,然后增删改查就在这个数组上进行:
list: [
{
username: 'aaaaa',
email: '123@qq.com',
sex: '男',
province: '北京市',
hobby: ['篮球', '读书', '编程']
},
{
username: 'bbbbb',
email: 'bbbbbbb@163.com',
sex: '女',
province: '河北省',
hobby: ['弹琴', '读书', '插画']
}
// ...
]
这里面的表单有:文本输入框,单选按钮,select选择框,复选框等。
1. 展示数据
我们的数据都放在数组list中,但是这里并不直接对list对循环输出,而是先把list中的数据给一个数组slist,对slist进行循环输出。因为我们在后面的查询功能中需要对数据进行过滤,数组list一直保存着原始数据(包括新增、修改后或已删除后),而数组slist只负责展示。
在vue中提供一个setSlist方法,将需要展示的数据给了数组slist:
// 获取需要渲染到页面中的数据
setSlist(arr) {
this.slist = JSON.parse(JSON.stringify(arr));
}
然后在html中使用v-for把slist数组渲染出来:
<tr v-cloak v-for="(item, index) of slist"> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td><a href="javascript:;" @click="showOverlay(index)">修改</a> | <a href="javascript:;" @click="del(index)">删除</a></td> </tr>
在操作这一栏中,给修改和删除操作绑定上事件。
2. 增加和删除功能
把增加功能和删除合并到一起,是这两个功能相对来说都比较简单。
增加用户时使用push方法,把用户的信息添加到list数组的最后:
this.list.push({
username: 'ffff',
email: 'fffffff@163.com',
sex: '女',
province: '河南省',
hobby: ['弹琴', '插画']
});
这样就能添加一位ffff的用户了。
删除用户时,通过splice(index, 1),可以删除index位置的数据,页面上的数据自动就会更新。
3. 修改功能
假设我们弹层里的数据是selectedlist,那么每次修改时,把index位置的数据给了selectedlist,然后在弹层中修改selectedlist。我们也能看到修改数据的类型: 文本框(用户名,邮箱),单选按钮(性别),select选择框(所在省份),多选框(爱好),这里我们主要练习的是表单处理(https://cn.vuejs.org/v2/guide/forms.html)。弹层是否显示用变量isActive来控制:
// 修改数据
modifyData(index) {
this.selected = index; // 修改的位置
this.selectedlist = this.list[index];
this.isActive = true;
}
有没有发现一个问题,当修改弹层中的信息时,表格中的数据也同步更新了。可是我们本身是希望当点击保存按钮时,才把弹层中的数据保存到表格里。问题的根源就出在这里:
this.selectedlist = this.list[index];
因为list[index]是个Object类型的数据,若使用=赋值,则赋值操作为浅度拷贝(把数据的地址赋值给对应变量,而没有把具体的数据复制给变量,变量会随数据值的变化而变化),selectedlist与list[index]使用相同的数据地址,互相引起数据值的变化。因此这里我们需要进行深度拷贝:
this.selectedlist = JSON.parse( JSON.stringify(this.list[index]) ); // 先转换为字符串,然后再转换
当用户修改数据后,selectedlist就会发生变化,点击保存按钮时,将数据重新保存到index位置:
/* this.list 数据数组 this.selected 刚才修改的位置 this.selectedlist 需要保存的数据 */ Vue.set(this.list, this.selected, this.selectedlist);
4. 查询功能
在第1小节中我们已经说过,在页面表格中展示的是slist中的数据,就是为了方便执行查询操作:
// 获取需要渲染到页面中的数据
setSlist(arr) {
this.slist = JSON.parse(JSON.stringify(arr));
}
每次根据某些条件将过滤后的数据赋值给slist数组,展示出查询后的数据。这里我们的查询实现了两个小功能:
1、用户在输入某个字符后,自动在输入框下方用列表展示出用户可能要查询的词语(如用户名等)
2、同步更新表格中的数据
这里我们通过用户名和邮箱进行查询,因此在过滤数据时,需要检测用户名和邮箱是否含有查询的单词。我们先给输入框绑定一个input事件,同时用datalist展示用户可能要查询的词语:
<input type="text" placeholder="search" @input="search" list="cars" class="search"> <datalist id="cars"> <option v-for="item in searchlist" :value="item"></option> </datalist>
search功能的实现,searchlist为在输入框下方展示的可能要搜索的词语,ss数组则保存过滤后的数据,当循环完毕后,设置调用setSlist方法修改slist数组:
每当用户输入或者删除一个字符时都会调用search方法,执行查询操作,当用点击展示词语列表时,也会调用search方法。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# vue
# 增删改查
# Vue使用Element实现增删改查+打包的步骤
# VUE+Element实现增删改查的示例源码
# vue实现表格增删改查效果的实例代码
# vue实现表格数据的增删改查
# Vue3实现登录表单验证功能
# vue表单验证自定义验证规则详解
# vue实现表单验证小功能
# vue实现表单验证功能
# Vue数据增删改查与表单验证的实现流程介绍
# 输入框
# 的是
# 就会
# 给了
# 层中
# 表单
# 绑定
# 单选
# 查询功能
# 同步更新
# 这一
# 是个
# 放在
# 就在
# 也会
# 就能
# 河北省
# 河南省
# 也能
# 说过
相关文章:
如何通过西部数码建站助手快速创建专业网站?
如何在服务器上配置二级域名建站?
电商网站制作价格怎么算,网上拍卖流程以及规则?
用v-html解决Vue.js渲染中html标签不被解析的问题
开封网站制作公司,网络用语开封是什么意思?
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
营销式网站制作方案,销售哪个网站招聘效果最好?
制作企业网站建设方案,怎样建设一个公司网站?
Swift中switch语句区间和元组模式匹配
如何选择网络建站服务器?高效建站必看指南
宿州网站制作公司兴策,安徽省低保查询网站?
建站之星导航菜单设置与功能模块配置全攻略
,想在网上投简历,哪几个网站比较好?
如何通过WDCP绑定主域名及创建子域名站点?
制作门户网站的参考文献在哪,小说网站怎么建立?
如何在万网ECS上快速搭建专属网站?
如何在云主机上快速搭建多站点网站?
c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】
西安专业网站制作公司有哪些,陕西省建行官方网站?
企业网站制作公司网页,推荐几家专业的天津网站制作公司?
免费ppt制作网站,有没有值得推荐的免费PPT网站?
弹幕视频网站制作教程下载,弹幕视频网站是什么意思?
小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化
建站之星价格显示格式升级,你的预算足够吗?
制作宣传网站的软件,小红书可以宣传网站吗?
专业商城网站制作公司有哪些,pi商城官网是哪个?
宝塔面板创建网站无法访问?如何快速排查修复?
实现虚拟支付需哪些建站技术支撑?
专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?
广平建站公司哪家专业可靠?如何选择?
公司网站设计制作厂家,怎么创建自己的一个网站?
宝塔面板如何快速创建新站点?
如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?
高端企业智能建站程序:SEO优化与响应式模板定制开发
网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?
网站制作的步骤包括,正确网址格式怎么写?
html制作网站的步骤有哪些,iapp如何添加网页?
建站之星代理平台如何选择最佳方案?
北京企业网站设计制作公司,北京铁路集团官方网站?
大型企业网站制作流程,做网站需要注册公司吗?
如何在云主机上快速搭建网站?
PHP 500报错的快速解决方法
公众号网站制作网页,微信公众号怎么制作?
建站之星上传入口如何快速找到?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
定制建站如何定义?其核心优势是什么?
网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?
郑州企业网站制作公司,郑州招聘网站有哪些?
c# 在高并发场景下,委托和接口调用的性能对比
专业网站设计制作公司,如何制作一个企业网站,建设网站的基本步骤有哪些?
*请认真填写需求信息,我们会在24小时内与您取得联系。