# 挂载
实例化完成后,我们将其挂载到Vue实例的options上
const app = new Vue({ router }).$mount('#app')成功
1
2
3
2
3
调用代码很简单,就是把初始化完毕后的VueRouter的实例router当成参数传入,new Vue的时候,会将router挂载到vm.$options上。
有些同学可能很好奇,为什么其他插件,只需要Vue.use就行,Vue Router还需要多这么一步呢?
其实这么做的原因有很多种
- 唯一性:将VueRouter的实例挂载到根组件中,保证整个Vue生命周期内中都只有一个VueRouter的实例
- 复用性:整个生命周期内共享一个VueRouter实例,即使在多个组件中使用VueRouter,也是可复用的
- 后续使用中可以用$options.router来判断是否在根Vue中,方便后续逻辑处理
当然,能够实现上述功能的方法有很多种,Vue Router只是选择了当前这种实现方案