1--仿vue 手写一个Router--主要说hash模式,组件渲染也是只说router-view

vue-router源码全解析  https://mp.weixin.qq.com/s/5-tRCJTd3K65PZSLrwVCfw

vuex源码全解析  https://mp.weixin.qq.com/s/hY2K35L11vLc0-OvUTTg0A

Router 在vue中是个什么呢? -- 就是一个插件和其他第三方插件一样。

写一个第三方插件的步骤是什么呢? -- 拿Router 为例

首先要有一个类 -- Router 类, Router 类中要有install函数。因为Vue.use(Router)  默认会初始化 插件中的install函数。可以理解为install是插件的入口。而且默认Vue会把构造函数掺入到install的函数中

例如:

// install函数 是VueRouter的入口方法, 安装插件。
/* VueRouter插件依赖vue
   如果用import Vue from 'vue' 的方式引入Vue。当给这个插件打包的时候。
   会把Vue一起打包到插件中去(这个插件只VueRouter)这样Vue会引入多次。
   为了解决这一问题,默认会传给install方法一个Vue的 构造函数
*/
export let _Vue;
export default function install(Vue){ // Vue -- vue构造函数
    // 在install中通常做的功能
    _Vue = Vue;
    // 核心功能
    /* 
        混入,该方法是给所有组件添加一些属性,
        所有组件只得是项目中所以的组件,不管是引用的还是自己定义的 
        例如:main.j
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值