vue的组件传参底层解析话术
作者:互联网
vue的数据响应是依赖于:观察—订阅模式的 那么on和emit也不例外。
$on
首先组件值的发送是使用$on
来收集所有事件依赖的,会将传入的参数event
和fn
作为key
和value
的形式传到vm._events
这个事件集合里 比如vm._events[event]=[fn]
$emit
接下来是组件参数的接收 是使用$emit
来触发事件 它会根据传入的event
在vm_event
中找到对应的事件并且执行invokeWithErrorHandling(cbs[i], vm, args, vm, info)
的
通过invokeWithErrorHandling
方法可以知道,它是通过handler.apply(context, args)
和handler.call(context)
的形式执行对应的方法
vuex的特点
使用vuex 只需要执行vue.ues(vuex),保证vuex是以插件的形式被vue加载的
state的数据是具有响应式的,A组件中修改了,B组件中可用修改后的值
getters可以对state的数据做动态派生
mutations中的方法是同步修改的
actions中的方法是异步修改
//先写这些 明天继续研究vuex
标签:传参,vue,vm,emit,组件,话术,vuex,event 来源: https://blog.csdn.net/qq_40277632/article/details/112295823