feat(search): Localization for search placeholder, close #80
This commit is contained in:
parent
079bd00395
commit
2351c3e68c
6 changed files with 41 additions and 6 deletions
|
|
@ -89,6 +89,10 @@ window.$docsify = {
|
||||||
// ...
|
// ...
|
||||||
})
|
})
|
||||||
|
|
||||||
|
hook.mounted(function() {
|
||||||
|
// Called after initial completion. Only trigger once, no arguments.
|
||||||
|
})
|
||||||
|
|
||||||
hook.ready(function() {
|
hook.ready(function() {
|
||||||
// Called after initial completion, no arguments.
|
// Called after initial completion, no arguments.
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -84,6 +84,10 @@ window.$docsify = {
|
||||||
// ...
|
// ...
|
||||||
})
|
})
|
||||||
|
|
||||||
|
hook.mounted(function() {
|
||||||
|
// 初始化完成后调用 ,只调用一次,没有参数。
|
||||||
|
})
|
||||||
|
|
||||||
hook.ready(function() {
|
hook.ready(function() {
|
||||||
// 初始化并第一次加完成数据后调用,没有参数。
|
// 初始化并第一次加完成数据后调用,没有参数。
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,7 @@ export function initMixin (proto) {
|
||||||
initEvent(vm) // Bind events
|
initEvent(vm) // Bind events
|
||||||
initRoute(vm) // Add hashchange eventListener
|
initRoute(vm) // Add hashchange eventListener
|
||||||
initFetch(vm) // Fetch data
|
initFetch(vm) // Fetch data
|
||||||
|
callHook(vm, 'mounted')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,14 @@
|
||||||
import { noop } from '../util/core'
|
import { noop } from '../util/core'
|
||||||
|
|
||||||
export function initLifecycle (vm) {
|
export function initLifecycle (vm) {
|
||||||
const hooks = ['init', 'beforeEach', 'afterEach', 'doneEach', 'ready']
|
const hooks = [
|
||||||
|
'init',
|
||||||
|
'mounted',
|
||||||
|
'beforeEach',
|
||||||
|
'afterEach',
|
||||||
|
'doneEach',
|
||||||
|
'ready'
|
||||||
|
]
|
||||||
|
|
||||||
vm._hooks = {}
|
vm._hooks = {}
|
||||||
vm._lifecycle = {}
|
vm._lifecycle = {}
|
||||||
|
|
|
||||||
|
|
@ -67,7 +67,7 @@ function style () {
|
||||||
|
|
||||||
function tpl (opts) {
|
function tpl (opts) {
|
||||||
const html =
|
const html =
|
||||||
`<input type="search" placeholder="${opts.placeholder}" />` +
|
`<input type="search" />` +
|
||||||
'<div class="results-panel"></div>' +
|
'<div class="results-panel"></div>' +
|
||||||
'</div>'
|
'</div>'
|
||||||
const el = dom.create('div', html)
|
const el = dom.create('div', html)
|
||||||
|
|
@ -108,9 +108,25 @@ function bindEvents () {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function (opts) {
|
function updatePlaceholder (text, path) {
|
||||||
|
const $input = dom.getNode('.search input[type="search"]')
|
||||||
|
|
||||||
|
if (typeof text === 'string') {
|
||||||
|
$input.placeholder = text
|
||||||
|
} else {
|
||||||
|
const match = Object.keys(text).find(key => path.indexOf(key) > -1)
|
||||||
|
$input.placeholder = text[match]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export function init (opts) {
|
||||||
dom = Docsify.dom
|
dom = Docsify.dom
|
||||||
style()
|
style()
|
||||||
tpl(opts)
|
tpl(opts)
|
||||||
bindEvents()
|
bindEvents()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function update (opts, vm) {
|
||||||
|
updatePlaceholder(opts.placeholder, vm.route.path)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
import initComponet from './component'
|
import { init as initComponet, update as updateComponent } from './component'
|
||||||
import { init as initSearch } from './search'
|
import { init as initSearch } from './search'
|
||||||
|
|
||||||
const CONFIG = {
|
const CONFIG = {
|
||||||
|
|
@ -21,11 +21,14 @@ const install = function (hook, vm) {
|
||||||
|
|
||||||
const isAuto = CONFIG.paths === 'auto'
|
const isAuto = CONFIG.paths === 'auto'
|
||||||
|
|
||||||
hook.ready(_ => {
|
hook.mounted(_ => {
|
||||||
initComponet(CONFIG)
|
initComponet(CONFIG)
|
||||||
isAuto && initSearch(CONFIG, vm)
|
isAuto && initSearch(CONFIG, vm)
|
||||||
})
|
})
|
||||||
!isAuto && hook.doneEach(_ => initSearch(CONFIG, vm))
|
hook.doneEach(_ => {
|
||||||
|
updateComponent(CONFIG, vm)
|
||||||
|
!isAuto && initSearch(CONFIG, vm)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
window.$docsify.plugins = [].concat(install, window.$docsify.plugins)
|
window.$docsify.plugins = [].concat(install, window.$docsify.plugins)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue