feat: 确保message的扩展性
This commit is contained in:
parent
959f24225c
commit
6005a7cd97
|
@ -26,7 +26,6 @@ export class Messages {
|
||||||
reg: RegExp
|
reg: RegExp
|
||||||
fnc: string
|
fnc: string
|
||||||
}[] = []
|
}[] = []
|
||||||
|
|
||||||
#init = PluginSuperDefine
|
#init = PluginSuperDefine
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -62,14 +61,21 @@ export class Messages {
|
||||||
const App = this
|
const App = this
|
||||||
class Children extends Plugin {
|
class Children extends Plugin {
|
||||||
constructor() {
|
constructor() {
|
||||||
super({
|
// init
|
||||||
|
super()
|
||||||
|
// 丢给this
|
||||||
|
const init = {
|
||||||
...App.#init,
|
...App.#init,
|
||||||
rule: App.#rule
|
rule: App.#rule
|
||||||
})
|
}
|
||||||
|
for (const key in init) {
|
||||||
|
this[key] = init[key]
|
||||||
|
}
|
||||||
for (const key of App.#rule) {
|
for (const key of App.#rule) {
|
||||||
// 确认存在该函数
|
// 确认存在该函数
|
||||||
if (App[key.fnc] instanceof Function) {
|
if (App[key.fnc] instanceof Function) {
|
||||||
this[key.fnc] = App[key.fnc].bind(App)
|
// 改变this指向 确保未来废除 fun(e) 后可用
|
||||||
|
this[key.fnc] = () => App[key.fnc].call(this, this.e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -82,14 +88,7 @@ export class Messages {
|
||||||
* 事件
|
* 事件
|
||||||
*/
|
*/
|
||||||
export class Events {
|
export class Events {
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#count = 0
|
#count = 0
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#data: {
|
#data: {
|
||||||
[key: string]: typeof Plugin
|
[key: string]: typeof Plugin
|
||||||
} = {}
|
} = {}
|
||||||
|
@ -109,4 +108,4 @@ export class Events {
|
||||||
get ok() {
|
get ok() {
|
||||||
return this.#data
|
return this.#data
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue