父组件执行deleteItem方法时候使用的index参数 ,是当前父组件的index 吧?
以下是我测试:即使子组件不传递index参数,也是能执行删除操作的
子组件,不传递index:
this.$emit('deleteItem');
父组件:
<todo-item v-for="(item,index) of todoList" ::key="index" :content="item" :index="index" @deleteItem="removeItem(index)"></todo-item>
楼上说的狠对
父组件通过属性传值,传给子组件两个值,一个是content,一个是index,所以子组件遍历出来的每个li标签都有这两个值。
删除某个li标签时,由子组件发射($emit)index值给父组件,这个index值就是要删除list数组的下标值。
不传index当然也能删除,因为splice()函数删除的就不是该下标的值了