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向.ashx文件post中文乱码问题的解决方法
Mar 28 Javascript
jQuery修改class属性和CSS样式整理
Jan 30 Javascript
网页禁用右键菜单和鼠标拖动选择方法小结
Feb 25 Javascript
Angularjs自定义指令实现三级联动 选择地理位置
Feb 13 Javascript
解决BootStrap Fileinput手机图片上传显示旋转问题
Jun 01 Javascript
一步步教你利用Canvas对图片进行处理
Sep 19 Javascript
浅谈JS 数字和字符串之间相互转化的纠纷
Oct 20 Javascript
vue中,在本地缓存中读写数据的方法
Sep 21 Javascript
详解JavaScript函数callee、call、apply的区别
Mar 08 Javascript
详解ES6新增字符串扩张方法includes()、startsWith()、endsWith()
May 12 Javascript
JavaScript链式调用原理与实现方法详解
May 16 Javascript
9个JavaScript日常开发小技巧
Oct 06 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
PHP中的cookie不用刷新就生效的方法
2012/02/04 PHP
smarty缓存用法分析
2014/12/16 PHP
php检测图片主要颜色的方法
2015/07/01 PHP
10款实用的PHP开源工具
2015/10/23 PHP
实例介绍PHP中zip_open()函数用法
2019/02/15 PHP
国外Lightbox v2.03.3 最新版 下载
2007/10/17 Javascript
关于可运行代码无法正常执行的使用说明
2010/05/13 Javascript
javascript中兼容主流浏览器的动态生成iframe方法
2014/05/05 Javascript
jQuery制作仿Mac Lion OS滚动条效果
2015/02/10 Javascript
JavaScript实现向setTimeout执行代码传递参数的方法
2015/04/16 Javascript
JavaScript中setTimeout的那些事儿
2016/11/14 Javascript
谈谈VUE种methods watch和compute的区别和联系
2017/08/01 Javascript
移动端效果之IndexList详解
2017/10/20 Javascript
axios进阶实践之利用最优雅的方式写ajax请求
2017/12/20 Javascript
vue element 生成无线级左侧菜单的实现代码
2019/08/21 Javascript
解决axios post 后端无法接收数据的问题
2019/10/29 Javascript
javascript跳转与返回和刷新页面的实例代码
2019/11/20 Javascript
解决Vue大括号字符换行踩的坑
2020/11/09 Javascript
vue element和nuxt的使用技巧分享
2021/01/14 Vue.js
Vant+postcss-pxtorem 实现浏览器适配功能
2021/02/05 Javascript
python itchat实现微信自动回复的示例代码
2017/08/14 Python
Python模拟三级菜单效果
2017/09/11 Python
Python 实现两个服务器之间文件的上传方法
2019/02/13 Python
python实现维吉尼亚加密法
2019/03/20 Python
pycharm实现在虚拟环境中引入别人的项目
2020/03/09 Python
python 成功引入包但无法正常调用的解决
2020/03/09 Python
Python脚本打包成可执行文件过程解析
2020/10/20 Python
简述网络文件系统NFS,并说明其作用
2016/10/19 面试题
汽车驾驶求职信
2013/10/25 职场文书
单位创先争优活动方案
2014/01/26 职场文书
应聘编辑自荐信范文
2014/03/12 职场文书
毕业班联欢会主持词
2014/03/27 职场文书
我有一个梦想演讲稿
2014/05/05 职场文书
党支部党的群众路线对照检查材料
2014/09/24 职场文书
兴趣班停课通知
2015/04/24 职场文书
学校世界艾滋病日宣传活动总结
2015/05/05 职场文书