1,实例化Vue对象 2,通过mixin 将router注入到vue中,同时调用router.init()方法,同时定义一个响应式的_router对象
3,router.init
注册了对于地址栏变动的监听
4,transitionTo
获取与当前路径匹配的配置好的路由;
更新当前router对象; 如果是hash模式,onhashChange更新router,如果是history模式,使用pushState/popState更新路由
5,同步视图更新
获取当前路由对象,找到根路由中的所有组件,根据当前路由获取对应组件,使用h函数展示在页面中。