vue实现商品列表的添加删除实例讲解


Posted in Javascript onMay 14, 2020

我们首先来看下代码:

<div id="app">
<div class="container"><form class="form-inline">
<div class="form-group"><label for="exampleInputName2">ID:</label> <input id="exampleInputName2" class="form-control" type="text" /></div>
<div class="form-group"><label for="exampleInputEmail2">Name:</label> <input class="form-control" type="text" /></div>
<button class="btn btn-primary" type="button">提交</button></form>
<table class="table table-hover table-striped">
<tbody>
<tr>
<td>ID</td>
<td>品牌名称</td>
<td>添加时间</td>
<td>操作</td>
</tr>
<tr>
<td>{{item.id}}</td>
<td>{{item.pp_name}}</td>
<td>{{item.add_time | getTime()}}</td>
<td><a>删除</a></td>
</tr>
</tbody>
</table>
</div>
</div>
<script type="text/javascript">// <![CDATA[
var app = new Vue({
el: '#app',
data: {
id : '',
name : '',
list : [
{id : 1, pp_name : '安踏', add_time : new Date()},
{id : 2, pp_name : '李宁', add_time : new Date()},
{id : 3, pp_name : '捷豹', add_time : new Date()},
{id : 4, pp_name : '悍马', add_time : new Date()}
]
},
methods: {
add : function(){
// 数据插入数组操作
this.list.push({id : this.id, pp_name : this.name, add_time : new Date()});
this.id = this.name = ''
},

/* 
根据id删除数据

分析: 先要找到这一项数据的id,然后根据id删除索引
找到索引之后直接调用数组的splice方法
*/
del : function(id){
this.list.some((item,i) =>{
if(item.id === id){
this.list.splice(i,1);

// 在数组some中 如果返回值为true,则会立即终止后续的循环
return true;
}
})
}
},
// 时间的过滤
filters:{
getTime:function(value){
let date = new Date(value),
Y = date.getFullYear(),
m = date.getMonth() + 1,
d = date.getDate(),
h = date.getHours(),
min = date.getMinutes(),
s = date.getSeconds();
if(m<10){m = '0' +m;}
if(d<10){d = '0' +d;}
if(h<10){h = '0' +h;}
if(min<10){min = '0' +min;}
if(s<10){s = '0' +s;}

let t = Y + '-' + m + '-' + d + ' | ' + h + ':' + min + ':' + s;
return t;
}
}

})

// ]]></script>

内容补充:

vue中注册组件,实现列表的添加删除效果

1、首先在html的<code><head>标签中</code>导入vue.js

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

2、在body中创建一个应用vue模板的容器

// vue起作用的区域root
<div id="root">
// input与mesg数据绑定
<input v-model="mesg" />
<button @click="handle">提交</button>
<ul>
<todo-item v-for='(item,index) in list' :key='index' :index='index' :content='item' @delete='deletes'></todo-item>
</ul>
</div>

3、在script标签中创建并注册名为todo-item的组件

Vue.component('todo-item', {
props: ['content', 'index'],
template: '<li @click="handelClick">{{content}}</li>',
methods: {
handelClick: function() {
//点击li元素就触发delete方法
this.$emit('delete', this.index);
}
}
})

4、在script标签中初始化vue实例

new Vue({
el: '#root',
data() {
return {
list: [],
mesg: ''
}
},
methods: {
//点击提交按钮,输入文本信息就加入列表
handle: function() {
if(this.mesg==''){
return;
}
this.list.push(this.mesg);
this.mesg = ''
},
deletes: function(index) {
alert(index)
this.list.splice(index, 1);
}
}
})

到此这篇关于vue实现商品列表的添加删除实例讲解的文章就介绍到这了,更多相关vue商品列表添加删除内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
jquery控制display属性为none或block
Mar 31 Javascript
JavaScript入门系列之知识点总结
Mar 24 Javascript
JavaScript如何实现跨域请求
Aug 05 Javascript
H5用户注册表单页 注册模态框!
Sep 17 Javascript
JS产生随机数的用法小结
Dec 10 Javascript
js如何获取网页所有图片
May 12 Javascript
详解Node.js 命令行程序开发教程
Jun 07 Javascript
使用Node.js实现RESTful API的示例
Aug 01 Javascript
javaScript日期工具类DateUtils详解
Dec 08 Javascript
详解vue组件基础
May 04 Javascript
微信小程序下拉框搜索功能的实现方法
Jul 31 Javascript
js canvas实现五子棋小游戏
Jan 22 Javascript
Vue 自适应高度表格的实现方法
May 13 #Javascript
ES6函数实现排它两种写法解析
May 13 #Javascript
详解vue-router的Import异步加载模块问题的解决方案
May 13 #Javascript
JavaScript 实现自己的安卓手机自动化工具脚本(推荐)
May 13 #Javascript
原生JS实现汇率转换功能代码实例
May 13 #Javascript
JavaScript Tab菜单实现过程解析
May 13 #Javascript
JQuery事件冒泡和默认行为代码实例
May 13 #jQuery
You might like
PHILIPS AE3805收音机的分析打磨
2021/03/02 无线电
浅析php header 跳转
2013/06/17 PHP
Smarty最简单实现列表奇偶变色的方法
2015/07/01 PHP
ThinkPHP框架中使用Memcached缓存数据的方法
2018/03/31 PHP
PHP实现的简单组词算法示例
2018/04/10 PHP
PHP排序算法之归并排序(Merging Sort)实例详解
2018/04/21 PHP
PHP封装的分页类与简单用法示例
2019/02/25 PHP
CI(CodeIgniter)框架中URL特殊字符处理与SQL注入隐患分析
2019/02/28 PHP
Js+XML 操作
2006/09/20 Javascript
Jquery Ajax学习实例3 向WebService发出请求,调用方法返回数据
2010/03/16 Javascript
javascript的原生方法获取数组中的最大(最小)值
2012/12/19 Javascript
jquery Ajax 实现加载数据前动画效果的示例代码
2014/02/07 Javascript
基于jQuery的图片不完全按比例自动缩小
2014/07/11 Javascript
js实现接收表单的值并将值拼在表单action后面的方法
2015/11/23 Javascript
JavaScript中获取HTML元素值的三种方法
2016/06/20 Javascript
AngularJS equal比较对象实例详解
2016/09/14 Javascript
js print打印网页指定区域内容的简单实例
2016/11/01 Javascript
VeeValidate在vue项目里表单校验应用案例
2018/05/09 Javascript
Vue下拉框回显并默认选中随机问题
2018/09/06 Javascript
关于微信小程序登录的那些事
2019/01/08 Javascript
vue+element table表格实现动态列筛选的示例代码
2021/01/14 Vue.js
理解Python垃圾回收机制
2016/02/12 Python
简单谈谈Python的pycurl模块
2018/04/07 Python
Python实现FTP弱口令扫描器的方法示例
2019/01/31 Python
python学生管理系统学习笔记
2019/03/19 Python
浅谈Python_Openpyxl使用(最全总结)
2019/09/05 Python
sklearn和keras的数据切分与交叉验证的实例详解
2020/06/19 Python
Python的scikit-image模块实例讲解
2020/12/30 Python
html5 web本地存储将取代我们的cookie
2012/12/26 HTML / CSS
指针和引用有什么区别
2013/01/13 面试题
护士岗位职责
2014/02/16 职场文书
有创意的广告词
2014/03/18 职场文书
2014年学校安全工作总结
2014/11/13 职场文书
如何在Python项目中引入日志
2021/05/31 Python
Java 关于String字符串原理上的问题
2022/04/07 Java/Android
Java 多线程并发FutureTask
2022/06/28 Java/Android