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.js中的new Vue、HellowWorl.vue中都会存在混入的属性
*/
Vue.mixin({
/
手把手教你仿Vue实现Router:聚焦hash模式与组件渲染

本文深入解析vue-router源码,通过实例详细讲解如何手写一个基于hash模式的Router。从创建Router类、混入beforeCreate钩子,到路由配置的处理和URL变化的监听,一步步揭示路由工作原理。同时,分析了组件渲染过程,特别是router-view和router-link的注册与使用。
最低0.47元/天 解锁文章
321

被折叠的 条评论
为什么被折叠?



