feat(hook): add doneEach

This commit is contained in:
qingwei.li 2017-02-13 23:06:30 +08:00
parent 558d73c2a8
commit c6f760275c
6 changed files with 30 additions and 5 deletions

View File

@ -1,3 +1,12 @@
### 2.4.0
> 2017-02-13
#### Features
- feat(hook): add `doneEach`
### 2.3.0
> 2017-02-13

View File

@ -67,7 +67,7 @@ window.$docsify = {
plugins: [
function (hook) {
hook.init(function() {
// Called when the script starts running, only trigger once.
// Called when the script starts running, only trigger once, no arguments,
})
hook.beforeEach(function(content) {
@ -84,8 +84,13 @@ window.$docsify = {
next(html)
})
hook.doneEach(function() {
// Invoked each time after the data is fully loaded, no arguments,
// ...
})
hook.ready(function() {
// Called after initialization is complete. Only trigger once.
// Called after initialization is complete. Only trigger once, no arguments.
})
}
]

View File

@ -63,7 +63,7 @@ window.$docsify = {
plugins: [
function (hook) {
hook.init(function() {
// 初始化时调用,只调用一次
// 初始化时调用,只调用一次,没有参数。
})
hook.beforeEach(function(content) {
@ -79,8 +79,13 @@ window.$docsify = {
next(html)
})
hook.doneEach(function() {
// 每次路由切换时数据全部加载完成后调用,没有参数。
// ...
})
hook.ready(function() {
// docsify 初始化完成后调用,只调用一次
// 初始化完成后调用,只调用一次,没有参数。
})
}
]

View File

@ -4,6 +4,7 @@ export default class Hook {
this.afterHooks = []
this.initHooks = []
this.readyHooks = []
this.doneEachHooks = []
}
beforeEach (fn) {
@ -14,6 +15,10 @@ export default class Hook {
this.afterHooks.push(fn)
}
doneEach (fn) {
this.doneEachHooks.push(fn)
}
init (fn) {
this.initHooks.push(fn)
}

View File

@ -130,6 +130,7 @@ const Docsify = function () {
mainRender(_ => {
scrollIntoView()
activeLink('nav')
window.Docsify.hook.emit('doneEach')
})
}

View File

@ -342,7 +342,7 @@ const install = function () {
new SearchComponent()
!isAuto && searchPlugin()
})
isAuto && hook.beforeEach(searchPlugin)
isAuto && hook.doneEach(searchPlugin)
}, window.$docsify.plugins)
}