本节简单介绍一下项目中如何引入 vue-router
一、相信大家对于路由应该都不陌生,它的作用就是根据不同的路径映射到不同的视图。 在项目中通常会如下图所示内容实例化路由插件,呢么接下来我们再来看一下是如何添加路由插件的。
二、由上文得知,项目通过 Vue.use() 函数来注册/新增插件的,呢么我们就来分析一下该函数的实现原理。
由于 Vue.use(plugin, arg1,arg2,...) 是类的静态函数,所以函数内的 this 指针默认指向 Vue 类。
Vue.use() 函数的 plugin 参数可以为 Object/Function 类型。然后获取 Vue._installedPlugins 静态属性对应的值,如果该属性不存在则创建并赋值为空数组。然后判断该插件 plugin 是否在 Vue._installedPlugins 静态属性内,
- 若在则直接
return Vue. - 若不存在则获取其余参数并转为数组
args再向其开头添加Vue类作为首参数。然后判断插件plugin的类型并执行plugin.apply(null, args) / plugin.install.apply(plugin,args),最后将该插件plugin存储到Vue._installedPlugins静态属性内。
总结,也就是说插件的 install() 函数的第一个参数默认为 Vue 类,这样的好处就是作为插件的编写,不需要再额外的去 import Vue 从而避免增加包的体积。