huaTJ0210 / fe-interview-questions-collect

MIT License
0 stars 0 forks source link

Vue:VueRouter的基本原理解析 #10

Closed huaTJ0210 closed 1 year ago

huaTJ0210 commented 1 year ago

router.push('xxx')为主线,描述路由导航的过程

1、基本过程

2、根Vue实例上存在一个响应式的_vue属性,何时被挂载的?

  • 在VueRouter的install方法中会触发Vue.mixin的beforeCreate方法;
    • 此方法中会在Vue根实例上挂载一个响应式属性_vue;然后调用Router的init方法,将根实例传入到Router中(这样history.cb方法内部就能更新_route);
    • _route变化就会通知watcher(属于根实例)进而进行组件的整体渲染;
    • 在整体渲染中router-view组件根据匹配到的组件调用render函数进行渲染;
huaTJ0210 commented 1 year ago

完结