学习todolist,学习理解时遇到的一些关于index的问题

来源:2-7 使用组件改造TodoList

差不多可不行

2019-07-21

我在默写并理解您这个代码的时候,自己写了一个无组件化的todolist(准备理解完成后再进行组件化) 可以写完代码后发现点击li时,删除的永远是第一个,以下是问题代码:

<div id="app">
	<input type="text" name="" v-model="inputVal" />
	<button v-on:click="onClick">提交</button>
	<ul>
		<li v-for="(item, index) in list" v-on:click="onDelete">{{item}}</li>
	</ul>
</div>
<script type="text/javascript">
		
		var app = new Vue({
			el: '#app',
			data: {
				list: [],
				inputVal: ''
			},
			methods: {
				onClick:function(){
					this.list.push(this.inputVal);
					this.inputVal = ''
				},
				onDelete:function(index){
					this.list.splice(this.index, 1)
				}
			}
		})

</script>

请问是否因为Index值的问题还是其他什么情况,望老师给予解答(vue小白 -_-!)

写回答

1回答

琑儿

2019-07-22

onDelete:function(index){
	this.list.splice(this.index, 1)
}
//改为
onDelete:function(index){
	this.list.splice(index, 1)
}


0
5
一如忘词
我试了下,这样写可以 onDelete:function(){ this.list.splice(this.list.length-1,1); }
2019-09-18
共5条回复

Vue2.5-2.6-3.0开发去哪儿网App 零基础入门到实战

课程紧跟Vue3版本迭代,企业主流版本Vue2+Vue3全掌握

10675 学习 · 8191 问题

查看课程