(#60) Remove mixin generic paradigm. #62
@ -1,7 +1,7 @@
|
||||
import { API, IAnyData, GeneralCallbackResult } from "../core/Api";
|
||||
import { EventType } from "../core/Emitter";
|
||||
import { EventType, Emitter } from "../core/Emitter";
|
||||
|
||||
interface ILoginEvent {
|
||||
type ILoginEvent = {
|
||||
|
||||
/**
|
||||
* session 过期
|
||||
@ -56,37 +56,37 @@ abstract class EduBase<
|
||||
if(!info) {
|
||||
isSuccess = false;
|
||||
errMsg = "Bad Data";
|
||||
this.emit("badData", { errMsg });
|
||||
(this as Emitter<IAnyData>).emit("badData", { errMsg });
|
||||
}
|
||||
|
||||
if (isSuccess) switch (info.code) {
|
||||
case (1):
|
||||
res = parseFunction(info.data);
|
||||
errMsg = info.err_msg ?? "Success";
|
||||
this.emit("ok", res!);
|
||||
(this as Emitter<IAnyData>).emit("ok", res!);
|
||||
break;
|
||||
|
||||
case (2):
|
||||
isSuccess = false;
|
||||
errMsg = info.err_msg ?? "Session Expire";
|
||||
this.emit("expire", { errMsg });
|
||||
(this as Emitter<IAnyData>).emit("expire", { errMsg });
|
||||
break;
|
||||
|
||||
case (3):
|
||||
isSuccess = false;
|
||||
errMsg = info.err_msg ?? "Unauthorized";
|
||||
this.emit("unauthorized", { errMsg });
|
||||
(this as Emitter<IAnyData>).emit("unauthorized", { errMsg });
|
||||
break;
|
||||
|
||||
case (4):
|
||||
isSuccess = false;
|
||||
errMsg = info.err_msg ?? "Error";
|
||||
this.emit("error", { errMsg });
|
||||
(this as Emitter<IAnyData>).emit("error", { errMsg });
|
||||
break;
|
||||
}
|
||||
|
||||
if (!isSuccess) this.emit("no", { errMsg });
|
||||
this.emit("done", { errMsg, data: res });
|
||||
if (!isSuccess) (this as Emitter<IAnyData>).emit("no", { errMsg });
|
||||
(this as Emitter<IAnyData>).emit("done", { errMsg, data: res });
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -316,7 +316,7 @@ class API<
|
||||
}
|
||||
|
||||
// 触发数据初始化事件
|
||||
this.emit("initData", this.data);
|
||||
(this as Emitter<IAnyData>).emit("initData", this.data);
|
||||
|
||||
// 重置请求数据
|
||||
const requestData:IWxRequestOption<O> = this.requestData = {
|
||||
@ -343,7 +343,7 @@ class API<
|
||||
}
|
||||
|
||||
// 触发数据解析
|
||||
this.emit("parseRequestData", this.data);
|
||||
(this as Emitter<IAnyData>).emit("parseRequestData", this.data);
|
||||
|
||||
// 数据收集
|
||||
for (let key in this.params) {
|
||||
@ -461,18 +461,18 @@ class API<
|
||||
let request = () => {
|
||||
|
||||
// 触发请求发送事件
|
||||
this.emit("request", this.requestData!)
|
||||
(this as Emitter<IAnyData>).emit("request", this.requestData!)
|
||||
|
||||
wx.request<O>({
|
||||
...this.requestData!,
|
||||
success: (e) => {
|
||||
this.emit("success", e);
|
||||
(this as Emitter<IAnyData>).emit("success", e);
|
||||
},
|
||||
fail: (e) => {
|
||||
this.emit("fail", e);
|
||||
(this as Emitter<IAnyData>).emit("fail", e);
|
||||
},
|
||||
complete: (e) => {
|
||||
this.emit("complete", e);
|
||||
(this as Emitter<IAnyData>).emit("complete", e);
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -490,12 +490,12 @@ class API<
|
||||
// 使用上次请求结果
|
||||
if (this.policy === RequestPolicy.useLastRequest) {
|
||||
lastAPI.on("success", (e) => {
|
||||
this.emit("success", e as SuccessCallbackResult<O>);
|
||||
this.emit("complete", {errMsg: e.errMsg});
|
||||
(this as Emitter<IAnyData>).emit("success", e as SuccessCallbackResult<O>);
|
||||
(this as Emitter<IAnyData>).emit("complete", {errMsg: e.errMsg});
|
||||
});
|
||||
lastAPI.on("fail", (e) => {
|
||||
this.emit("fail", e);
|
||||
this.emit("complete", {errMsg: e.errMsg});
|
||||
(this as Emitter<IAnyData>).emit("fail", e);
|
||||
(this as Emitter<IAnyData>).emit("complete", {errMsg: e.errMsg});
|
||||
});
|
||||
}
|
||||
|
||||
@ -605,8 +605,8 @@ class API<
|
||||
*/
|
||||
public addFailedCallBack(): this {
|
||||
this.on("fail", (e) => {
|
||||
this.emit("no", e as any);
|
||||
this.emit("done", e as any);
|
||||
(this as Emitter<IAnyData>).emit("no", e as any);
|
||||
(this as Emitter<IAnyData>).emit("done", e as any);
|
||||
});
|
||||
return this;
|
||||
}
|
||||
|
@ -106,8 +106,8 @@ class Mask<M extends Manager> extends Modular<M, {}, IMaskEvent> {
|
||||
* 处理蒙版点击事件
|
||||
*/
|
||||
private handleClickMask() {
|
||||
if (this.autoCloseOnClick) this.emit("hide", void 0);
|
||||
this.emit("click", void 0);
|
||||
if (this.autoCloseOnClick) this.emit("hide");
|
||||
this.emit("click");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -10,10 +10,10 @@ import { Mask } from "../../modular/Mask/Mask";
|
||||
const { manager, query } = await Manager.PageAsync();
|
||||
|
||||
// 添加蒙版 Modular
|
||||
const mask = manager.addModule(Mask, "mask");
|
||||
// const mask = manager.addModule(Mask, "mask");
|
||||
|
||||
// 添加 UserCard Modular
|
||||
manager.addModule(UserCard, "userCard", { mask });
|
||||
manager.addModule(UserCard, "userCard");
|
||||
|
||||
// 添加 MainFunction Modular
|
||||
manager.addModule(MainFunction, "mainFunction");
|
||||
|
@ -2,7 +2,7 @@ import { Modular, Manager } from "../../core/Module";
|
||||
import { Mask } from "../../modular/Mask/Mask";
|
||||
|
||||
type IUserCardDependent<M extends Manager> = {
|
||||
mask: Mask<M>
|
||||
// mask: Mask<M>
|
||||
}
|
||||
|
||||
type IUserCardEvent = {
|
||||
@ -23,7 +23,7 @@ class UserCard<M extends Manager> extends Modular<M, IUserCardDependent<M>, IUse
|
||||
* 处理主题更换
|
||||
*/
|
||||
private handleChangeTheme() {
|
||||
this.depends?.mask.emit("show", void 0);
|
||||
// this.depends?.mask.emit("show", void 0);
|
||||
this.emit("clickChangeTheme", void 0);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user