1 Star 0 Fork 0

Ceart / vue2-stage

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

yarn add -D rollup rollup-plugin-babel @babel/core @babel/preset-env

promise 解决无限嵌套

pending 等待状态
pending 成功
rejected 失败
Promise 的构造器接收一个执行函数 (executor),可以在这个执行函数里手动地 resolve 和 reject 一个 Promise

初始pending,resolve()转变为成功状态,reject()为失败状态
状态一旦改变不可更改
resolve(xx)数据会传给then(成功,失败)成功回调函数
reject(xx) 数据会传给then中 的失败回调函数方法

成功状态调用成功方法resolve,失败状态调用失败方法 reject

需要把then中的成功失败回调保存,状态改变时执行存起来的成功失败回调

vue响应式 原理

Observer数据监听器 : 
Observer的核心是通过Object.defineProprtty()来监听数据的变动
这个函数内部可以定义setter和getter每当数据发生变化就会触发setter
这时候Observer就要通知订阅者订阅者就是Watcher

Watcher订阅者 :
 Watcher订阅者作为Observer和Compile之间通信的桥梁
 主要做的事情是
在自身实例化时往属性订阅器(dep)里面添加自己
自身必须有一个update()方法
待属性变动dep.notice()通知时能调用自身的update()方法并触发Compile中绑定的回调


Compile指令解析器 : 
Compile主要做的事情是解析模板指令将模板中变量替换成数据
然后初始化渲染页面视图并将每个指令对应的节点绑定更新函数
添加鉴定数据的订阅者一旦数据有变动收到通知更新试图

vue-router

步骤
 * 1.在VueRouter中创建$router(当前路由实例) $route当前路由
 * 2.初始化页面模式mode history和hash
 * 3.根据routes创建路由表 path -> compunent
 * 4.根据router-link展示路由路径
 * 5.根据router-view去选择对应path的componuet

空文件

简介

Vue2源码手写 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/ceartmy/vue2-stage.git
git@gitee.com:ceartmy/vue2-stage.git
ceartmy
vue2-stage
vue2-stage
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891