fix: 修复上下文
This commit is contained in:
parent
d679d70023
commit
ac4df58eec
|
@ -1,3 +0,0 @@
|
|||
genshin
|
||||
system-plugin
|
||||
miao-plugin
|
|
@ -340,27 +340,34 @@ class PluginsLoader {
|
|||
*
|
||||
*/
|
||||
for (const plugin of priority) {
|
||||
/**
|
||||
* 上下文hook
|
||||
*/
|
||||
if (!plugin.getContext) continue
|
||||
if (!plugin?.getContext) continue
|
||||
const context = {
|
||||
...plugin.getContext(),
|
||||
...plugin.getContext(false, true)
|
||||
}
|
||||
if (!lodash.isEmpty(context)) {
|
||||
let ret
|
||||
|
||||
if (lodash.isEmpty(context)) {
|
||||
continue
|
||||
}
|
||||
|
||||
// 不为空的时候
|
||||
let ret = false
|
||||
|
||||
// 从方法里执行
|
||||
for (const fnc in context) {
|
||||
// 不是函数,错误插件错误写法
|
||||
if (typeof plugin[fnc] !== 'function') {
|
||||
continue
|
||||
}
|
||||
ret ||= await plugin[fnc](context[fnc])
|
||||
ret = await plugin[fnc](context[fnc])
|
||||
}
|
||||
// 返回continue时,继续响应后续插件
|
||||
if (ret === 'continue') continue
|
||||
return
|
||||
|
||||
// 不是约定的直接
|
||||
if (typeof ret != 'boolean' && ret !== true) {
|
||||
break
|
||||
}
|
||||
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -210,7 +210,7 @@ export class Plugin {
|
|||
* @param isGroup
|
||||
* @returns
|
||||
*/
|
||||
getContext(type: string, isGroup?: boolean) {
|
||||
getContext(type?: string, isGroup?: boolean) {
|
||||
if (type) return State[this.conKey(isGroup)]?.[type]
|
||||
return State[this.conKey(isGroup)]
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue