利用vue也可以实现数据的增删改查,只是未涉及到数据库,只是在浏览器页面中进行操作。

将datas数组中的数据循环输出:

再增加一行,用于保存新数据,编辑数据后保存:

此时,数据已经呈现出来,开始进行一系列的操作:
1.sava:

通过v-model将在最后一行填写的数据传输到piece中,然后改变this.piece的id,存入datas数组中。

2.deleted:

获得要删除该行的id,利用循环在数组datas中找到与id对应的i,使用数组的splice(i,1)方法,将该行数据删除。

3.editor:

获得要编辑的该行数据,直接把该数据赋给piece,还是利用v-model指令,此时数据会存入最后一行输入框中,可以进行编辑。

4.select:
获得要查看的该行数据,使用this.$Modal.info({.......})可以将该行数据以模拟框的形式输出,进行查看

注意:

在content中,是用``来将数据进行连接的。

完整代码:

<template>
<table>
<thead>
<tr>
<td>username</td>
<td>age</td>
<td>sex</td>
<td>professional</td>
<td>hobby</td>
<td>operation</td>
</tr>
</thead>
<tbody>
<tr v-for="d in datas">
<td>{{ d.username }}</td>
<td>{{ d.age }}</td>
<td>{{ d.sex }}</td>
<td>{{ d.professional }}</td>
<td>{{ d.hobby }}</td>
<td>
<button @click="editor(d)">编辑</button>
<button @click="deleted(d.id)">删除</button>
<button @click="select(d)">查看</button>
</td>
</tr>
<tr>
<td>
<input type="text" placeholder="username" v-model="piece.username">
</td>
<td>
<input type="text" placeholder="age" v-model="piece.age">
</td>
<td>
<input type="text" placeholder="sex" v-model="piece.sex">
</td>
<td>
<input type="text" placeholder="professional" v-model="piece.professional">
</td>
<td>
<input type="text" placeholder="hobby" v-model="piece.hobby">
</td>
<td>
<button @click="save()">保存</button>
</td>
</tr>
</tbody>
</table>
</template> <script>
export default {
data () {
return {
datas: [
{id: 1, username: '张三', age: 20, sex: '男', professional: '计算机', hobby: '打篮球'},
{id: 2, username: '李四', age: 21, sex: '男', professional: 'web', hobby: '羽毛球'},
{id: 3, username: '王五', age: 23, sex: '男', professional: 'python', hobby: '乒乓球'},
{id: 4, username: '如花', age: 19, sex: '女', professional: 'java', hobby: '学习'},
{id: 5, username: '似玉', age: 22, sex: '女', professional: '软件', hobby: '看书'}
],
piece: {
id: 0, username: '', age: '', sex: '', professional: '', hobby: ''
}
}
},
methods: {
editor (d) {
this.piece = d;
},
deleted (id) {
for(var i =0;i<this.datas.length;i++){
if(this.datas[i].id == id){
this.datas.splice(i,1);
break;
}
}
},
select (d) {
this.$Modal.info({
title: '用户信息',
content: `username: ${d.username}<br>age: ${d.age}<br>sex: ${d.sex}<br>professional: ${d.professional}<br>hobby: ${d.hobby}`
})
},
save () {
if(this.piece.id == 0){
this.piece.id = this.datas.length + 1;
this.datas.push(this.piece);
}
this.piece = {id: 0, username: '', age: '', sex: '', professional: '', hobby: ''};
}
}
}
</script> <style>
table tr td{
border: 2px solid black;
padding: 5px;
font-size: 15px;
}
table{
border-collapse: collapse;
margin: 0 auto;
}
thead tr td{
font-weight: bold;
font-size: 18px;
}
button{
font-size: 15px;
padding: 5px;
font-weight: 100;
}
</style>

关于vue的增删改查操作的更多相关文章

  1. webpack4+express+mongodb+vue 实现增删改查

    在讲解之前,我们先来看看效果如下所示: 1)整个页面的效果如下: 2) 新增数据效果如下: 3) 新增成功如下: 4) 编辑数据效果如下: 5) 编辑成功效果如下: 6) 删除数据效果如下: 7) 删 ...

  2. vue实现增删改查(内附源代码)

    VUE+Element实现增删改查 @ 目录 VUE+Element实现增删改查 前言 实验步骤 总结: 源代码 前言 &最近因为一些原因,没有更博客,昨天老师布置了一个作业,用vue实现增删 ...

  3. mongoVUE的增删改查操作使用说明

    mongoVUE的增删改查操作使用说明 一. 查询 1. 精确查询 1)右键点击集合名,再左键点击Find 或者直接点击工具栏上的Find 2)查询界面,包括四个区域 {Find}区,查询条件格式{& ...

  4. (转)SQLite数据库增删改查操作

    原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数 ...

  5. 详谈easyui datagrid增删改查操作

    转自:http://blog.csdn.net/abauch_d/article/details/7734395 前几天我把easyui dadtagrid的增删改查的实现代码贴了出来,发现访问量达到 ...

  6. PHP程序中使用PDO对象实现对数据库的增删改查操作的示例代码

    PHP程序中使用PDO对象实现对数据库的增删改查操作(PHP+smarty) dbconn.php <?php //------------------------使用PDO方式连接数据库文件- ...

  7. 浅谈dataGridView使用,以及画面布局使用属性,对datagridview进行增删改查操作,以及委托使用技巧

        通过几天的努力后,对datagridview使用作一些简要的介绍,该实例主要运用与通过对datagridview操作.对数据进行增删改查操作时,进行逻辑判断执行相关操作.简单的使用委托功能,实 ...

  8. 05_Elasticsearch 单模式下API的增删改查操作

    05_Elasticsearch 单模式下API的增删改查操作 安装marvel 插件: zjtest7-redis:/usr/local/elasticsearch-2.3.4# bin/plugi ...

  9. JDBC连接数据库及增删改查操作

    什么是JDBC?Java语言访问数据库的一种规范,是一套APIJDBC (Java Database Connectivity) API,即Java数据库编程接口,是一组标准的Java语言中的接口和类 ...

随机推荐

  1. Android为TV端助力:UDP协议(接收组播和单播)

    private static String MulticastHost="224.9.9.98";private static int POST=19999;private sta ...

  2. JMeter接口测试实战-动态数据验证

    JMeter接口测试实战-动态数据验证 说到验证就不得不说断言, 先来看下JMeter官方给出断言(Assertion)的定义, 用于检查测试中得到的响应数据等是否符合预期,用以保证测试过程中的数据交 ...

  3. row_number() over()分页查询

    1.首先讲下row_number() over() 是干什么的? 是一个分析函数,会在数据表生成一个排序列. 案例SQL: select ROW_NUMBER() over(order by book ...

  4. bootstarp 多图片上传 带进度条

    前台代码如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head&g ...

  5. oracle 当前年到指定年的年度范围求取

    如下面公式所示,求取2015到当前年(2018)的年度范围,当前年是由系统获取的,用到了sysdate和函数to_char,to_date. 当然,当前年也可以换成指定年份 SELECT TO_CHA ...

  6. ILRuntime官方Demo笔记

    调用/执行 热更中的方法 调用热更代码中方法,写在AppDomain中,记录一下主要几个方法: AppDomain.LoadAssembly 加载热更dll 执行热更代码的方法,有两种方式: appd ...

  7. vim编辑器操作

    vim被称为编辑器之神,另外一个是sublime.vim较vi比较高级,vi适用于文本编辑,vim更加适合于coding.凡是vim里面的命令在vi都是适用的. vim的大众版的三种模式(其实不止三种 ...

  8. UOJ #449. 【集训队作业2018】喂鸽子

    UOJ #449. [集训队作业2018]喂鸽子 小Z是养鸽子的人.一天,小Z给鸽子们喂玉米吃.一共有n只鸽子,小Z每秒会等概率选择一只鸽子并给他一粒玉米.一只鸽子饱了当且仅当它吃了的玉米粒数量\(≥ ...

  9. QLabel class

    Help on class QLabel in module PyQt5.QtWidgets: class QLabel(QFrame)  |  QLabel(parent: QWidget = No ...

  10. 【原创】从Rest到Graphql

    引言 开局两张图,内容全靠编- ok,如图所示,我在去年曾经写过一篇文章<闲侃前后端分离的必要性>.嗯,我知道肯定很多人没看过.所以我做一个总结,其实啰里八嗦了一篇文章,就是想说一下现在的 ...