代码拉取完成,页面将自动刷新
yarn add -D rollup rollup-plugin-babel @babel/core @babel/preset-env
pending 等待状态
pending 成功
rejected 失败
Promise 的构造器接收一个执行函数 (executor),可以在这个执行函数里手动地 resolve 和 reject 一个 Promise
初始pending,resolve()转变为成功状态,reject()为失败状态
状态一旦改变不可更改
resolve(xx)数据会传给then(成功,失败)成功回调函数
reject(xx) 数据会传给then中 的失败回调函数方法
成功状态调用成功方法resolve,失败状态调用失败方法 reject
需要把then中的成功失败回调保存,状态改变时执行存起来的成功失败回调
Observer(数据监听器) :
Observer的核心是通过Object.defineProprtty()来监听数据的变动,
这个函数内部可以定义setter和getter,每当数据发生变化,就会触发setter。
这时候Observer就要通知订阅者,订阅者就是Watcher
Watcher(订阅者) :
Watcher订阅者作为Observer和Compile之间通信的桥梁,
主要做的事情是:
在自身实例化时往属性订阅器(dep)里面添加自己
自身必须有一个update()方法
待属性变动dep.notice()通知时,能调用自身的update()方法,并触发Compile中绑定的回调
Compile(指令解析器) :
Compile主要做的事情是解析模板指令,将模板中变量替换成数据,
然后初始化渲染页面视图,并将每个指令对应的节点绑定更新函数,
添加鉴定数据的订阅者,一旦数据有变动,收到通知,更新试图
步骤
* 1.在VueRouter中创建$router(当前路由实例) $route(当前路由)
* 2.初始化页面模式mode history和hash
* 3.根据routes创建路由表 path -> compunent
* 4.根据router-link展示路由路径
* 5.根据router-view去选择对应path的componuet
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。