如题,比如我要删除子组件的一项,那一项是由父组件的list里面传递过来的,需要采用订阅发布模式通知父组件才可以删除,那为什么我在这一项上添加一个click事件弹出字符串(例如:alert'hello world')则不需要通知父组件呢?
这么想吧 其实无论父组件还是子组件,它们都只是对应着一个dom节点而已。list中的每个<li>其实都是一个dom子节点,想删除这些动态生成的子节点,按js的逻辑,得先找到父dom节点,才能定位到子节点本身。而弹出事件本身就不是个节点,无需定位,也就不需要通知其他节点了。
删除list数组的值,在子组件的方法调用父组件的实例.list.splice(index,1)就可以实现,我理解的,老师采取向父组件传值的方式删除对应的list值,是为了向我们展示子组件向父组件传值和父组件向子组件传值的方式.能够理解监听,绑定,订阅,发布的理解
弹出事件是直接绑定在list中的每一个<li>上的,就类似于直接绑定在父组件上了,无需通知,这样理解对不对