Vue 实现列表动态添加和删除的两种方法小结


Posted in Javascript onSeptember 07, 2018

下面将介绍两种方式实现动态添加和删除列表

1.不使用组件

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue 测试实例 - vue实现列表增加和删除</title>
<script src="https://cdn.bootcss.com/vue/2.2.2/vue.min.js"></script>
</head>
<body>
<div id="app">
 <input v-model="newAddText" placeholder="请输入要添加的内容" />
	<button @click='addNewList'>添加</button>
	<ul>
		<li v-for='(list,index) in lists' v-bind:key='list.id'>
			{{list.title}} <button v-on:click='lists.splice(index, 1)'>删除</button>
		</li>
	</ul>
</div>
 
<script>
 
var vm = new Vue({
 el: '#app',
 data: {
 newAddText:'',
	 lists:[
		 {id:1,title:'手机号码'},
		 {id:2,title:'qq号'},
		 {id:3,title:'姓名'},
	 ],
	 nextTodoId: 4
 },
 methods:{
	 addNewList:function(){
		 this.lists.push({
			 id:this.nextTodoId++,
			 title:this.newAddText
		 })
		 this.newAddText=''
	 }
 }	
})
 
</script>
</body>
</html>

初始界面:

Vue 实现列表动态添加和删除的两种方法小结

添加一个列表:

Vue 实现列表动态添加和删除的两种方法小结

删除一个列表:

Vue 实现列表动态添加和删除的两种方法小结

2.使用组件方法

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue 测试实例 - vue实现列表增加和删除</title>
<script src="https://cdn.bootcss.com/vue/2.2.2/vue.min.js"></script>
</head>
<body>
<div id="app">
 <input v-model="newAddText" placeholder="请输入要添加的内容" />
	<button @click='addNewList'>添加</button>
	<ul>
		<li is='list-item' v-for='(list,index) in lists' v-bind:key='list.id'
			v-bind:title='list.title' v-on:remove='lists.splice(index,1)'>
		</li>
	</ul>
</div>
 
<script>
	Vue.component('list-item', {
 template: '\
 <li>\
 {{ title }}\
 <button v-on:click="$emit(\'remove\')">删除</button>\
 </li>\
 ',
 props: ['title']
})
 
var vm = new Vue({
 el: '#app',
 data: {
 newAddText:'',
	 lists:[
		 {id:1,title:'手机号码'},
		 {id:2,title:'qq号'},
		 {id:3,title:'姓名'},
	 ],
	 nextTodoId: 4
 },
 methods:{
	 addNewList:function(){
		 this.lists.push({
			 id:this.nextTodoId++,
			 title:this.newAddText
		 })
		 this.newAddText=''
	 }
 }	
})
 
</script>
</body>
</html>

效果跟上面的一样的!

以上这篇Vue 实现列表动态添加和删除的两种方法小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基本jquery的控制tabs打开的数量的代码
Oct 17 Javascript
jquery动态添加删除div 具体实现
Jul 20 Javascript
js实现window.open不被拦截的解决方法汇总
Oct 30 Javascript
javascript常用的方法整理
Aug 20 Javascript
深入理解JavaScript中为什么string可以拥有方法
May 24 Javascript
JS获取屏幕高度的简单实现代码
May 24 Javascript
在vue中读取本地Json文件的方法
Sep 06 Javascript
微信小程序mpvue点击按钮获取button值的方法
May 29 Javascript
微信小程序实现左侧滑栏过程解析
Aug 26 Javascript
微信小程序image图片加载完成监听
Aug 31 Javascript
javascript/jquery实现点击触发事件的方法分析
Nov 11 jQuery
antd日期选择器禁止选择当天之前的时间操作
Oct 29 Javascript
koa-router源码学习小结
Sep 07 #Javascript
Vue.js实现表格渲染的方法
Sep 07 #Javascript
vue基于element的区间选择组件
Sep 07 #Javascript
vue-cli监听组件加载完成的方法
Sep 07 #Javascript
原生JS实现DOM加载完成马上执行JS代码的方法
Sep 07 #Javascript
vue加载完成后的回调函数方法
Sep 07 #Javascript
使用vue-router与v-if实现tab切换遇到的问题及解决方法
Sep 07 #Javascript
You might like
php实现字符串首字母大写和单词首字母大写的方法
2015/03/14 PHP
Yii中的cookie的发送和读取
2016/07/27 PHP
PHP如何将图片文件上传到另外一台服务器上
2019/08/26 PHP
用JavaScript显示随机图像或引用
2009/04/21 Javascript
30分钟就入门的正则表达式基础教程
2013/02/25 Javascript
js 限制input只能输入数字、字母和汉字等等
2013/12/18 Javascript
html文档中的location对象属性理解及常见的用法
2014/08/13 Javascript
JavaScript使用shift方法移除素组第一个元素实例分析
2015/04/06 Javascript
jQuery实现仿新浪微博浮动的消息提示框(可智能定位)
2015/10/10 Javascript
js判断移动端是否安装某款app的多种方法
2015/12/18 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
2017/02/16 Javascript
前端跨域的几种解决方式总结(推荐)
2017/08/16 Javascript
vue.js vue-router如何实现无效路由(404)的友好提示
2017/12/20 Javascript
基于JavaScript实现简单抽奖功能代码实例
2020/10/20 Javascript
[01:34]2014DOTA2展望TI 剑指西雅图VG战队专访
2014/06/30 DOTA
python基于BeautifulSoup实现抓取网页指定内容的方法
2015/07/09 Python
matplotlib绘图实例演示标记路径
2018/01/23 Python
python3解析库pyquery的深入讲解
2018/06/26 Python
Python 删除连续出现的指定字符的实例
2018/06/29 Python
解决pycharm运行出错,代码正确结果不显示的问题
2018/11/30 Python
python调用pyaudio使用麦克风录制wav声音文件的教程
2019/06/26 Python
python集合删除多种方法详解
2020/02/10 Python
python利用xpath爬取网上数据并存储到django模型中
2021/02/26 Python
基于HTML5代码实现折叠菜单附源码下载
2015/11/27 HTML / CSS
CHARLES & KEITH加拿大官网:新加坡时尚品牌
2020/03/26 全球购物
Aosom西班牙:家具在线商店
2020/06/11 全球购物
北大自主招生自荐信
2013/10/19 职场文书
优秀的毕业生的自我评价
2013/12/12 职场文书
社团成立邀请函
2014/01/08 职场文书
党的群众路线教育实践活动个人承诺书
2014/05/22 职场文书
年度安全生产目标责任书
2014/07/23 职场文书
2015年小学语文教学工作总结
2015/05/25 职场文书
2015七夕情人节宣传语
2015/07/14 职场文书
导游词之山东红叶谷
2019/10/31 职场文书
MySQL EXPLAIN输出列的详细解释
2021/05/12 MySQL
MySQL数据库 任意ip连接方法
2022/05/20 MySQL