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 相关文章推荐
麦鸡的TAB切换功能结合了javascript和css
Dec 17 Javascript
javascript 精粹笔记
May 09 Javascript
基于AngularJs + Bootstrap + AngularStrap相结合实现省市区联动代码
May 30 Javascript
JavaScript截屏功能的实现代码
Jul 28 Javascript
Vue利用路由钩子token过期后跳转到登录页的实例
Oct 26 Javascript
Vue三种常用传值示例(父传子、子传父、非父子)
Jul 24 Javascript
JS实现图片上传多次上传同一张不生效的处理方法
Aug 06 Javascript
浅谈vux之x-input使用以及源码解读
Nov 04 Javascript
vue实现todolist基本功能以及数据存储功能实例详解
Apr 11 Javascript
Vue中util的工具函数实例详解
Jul 08 Javascript
echarts大屏字体自适应的方法步骤
Jul 12 Javascript
vue+spring boot实现校验码功能
May 27 Vue.js
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中使用临时表查询数据的一个例子
2013/02/03 PHP
原生Js实现按的数据源均分时间点幻灯片效果(已封装)
2010/12/28 Javascript
js分解url参数(面向对象-极简主义法应用)
2012/08/09 Javascript
JS两种定义方式的区别、内部原理
2013/11/21 Javascript
javascript中typeof的使用示例
2013/12/19 Javascript
微信小程序 wxapp内容组件 text详细介绍
2016/10/31 Javascript
Vue组件的使用教程详解
2018/01/05 Javascript
解决Linux无法正常安装与卸载Node.js的方法
2018/01/19 Javascript
详解微信小程序回到顶部的两种方式
2019/05/09 Javascript
vue + elementUI实现省市县三级联动的方法示例
2019/10/29 Javascript
vue 实现通过vuex 存储值 在不同界面使用
2019/11/11 Javascript
react基本安装与测试示例
2020/04/27 Javascript
vue 子组件修改data或调用操作
2020/08/07 Javascript
[58:59]完美世界DOTA2联赛PWL S3 access vs CPG 第一场 12.13
2020/12/16 DOTA
零基础写python爬虫之使用Scrapy框架编写爬虫
2014/11/07 Python
python创建临时文件夹的方法
2015/07/06 Python
Python3 中把txt数据文件读入到矩阵中的方法
2018/04/27 Python
Pandas DataFrame数据的更改、插入新增的列和行的方法
2019/06/25 Python
Python画图高斯分布的示例
2019/07/10 Python
Tensorflow实现将标签变为one-hot形式
2020/05/22 Python
利用Python过滤相似文本的简单方法示例
2021/02/03 Python
聊聊python在linux下与windows下导入模块的区别说明
2021/03/03 Python
浅析CSS3中鲜为人知的属性:-webkit-tap-highlight-color
2017/01/12 HTML / CSS
美国最大的户外装备和服装购物网站:Backcountry
2019/10/15 全球购物
我能否用void** 指针作为参数, 使函数按引用接受一般指针
2013/02/16 面试题
师范毕业生求职自荐信
2013/09/25 职场文书
实习期自我鉴定
2013/10/11 职场文书
2014年安全生产工作总结
2014/11/13 职场文书
以权谋私检举信范文
2015/03/02 职场文书
经济纠纷起诉状
2015/05/20 职场文书
2015年仓库管理工作总结
2015/05/25 职场文书
交通安全教育主题班会
2015/08/12 职场文书
2016秋季运动会前导词
2015/11/25 职场文书
《伯牙绝弦》教学反思
2016/02/16 职场文书
2016年庆“七一”主题党日活动总结
2016/04/05 职场文书
PyTorch中的torch.cat简单介绍
2022/03/17 Python