深入理解v2
纷羽's blog 2020-03-01
# 数据变更追踪
vue2中的data是在初始化时候被hack为代理的setter/getter
数组则是附加hack关键的值
vue3 预期使用 ES6 中的 Proxy 对象
# 组件传参
父传子 prop
子传父 $emit
未知深度(瞎xxx传) vuex、EventBus(做一个代理组件。通过代理组件传递事件)
# router原理
# 用途
常规不需要在新标签、新窗口等打开的页面跳转方式下,不发生页面跳转实习页面切换,
这样可以使页面跳转间可以使用页面动画、同时节省一定用户请求流量
# model
history模式 通过 history pushState replaceState 改变url,不发生跳转(需要一定的服务器配合
hash模式 通过 hashChange事件、location.hash 改变url(router监听范围为 url的#后内容)和监听跳转
# 懒加载
语法:component: ()=>import("xxx")
效果是是目标组件分离成新的js文件,在需要时按需加载(并且可以利用chunk分组