- Vue 3 + TypeScript + Element Plus 前端界面 - Pinia 状态管理 - Vue Router 4 路由管理 - Axios HTTP 客户端 - MSW (Mock Service Worker) 开发环境模拟 - 账户管理界面 (列表、详情、三科目余额展示) - 交易管理界面 (列表、详情) - 对账管理界面 (三账校验) - 完善的 API 客户端封装 - Docker 容器化配置 - Nginx 配置用于生产环境
16 lines
485 B
TypeScript
16 lines
485 B
TypeScript
type AsyncTuple<ErrorType extends any = Error, DataType extends any = unknown> = {
|
|
error: ErrorType;
|
|
data: null;
|
|
} | {
|
|
error: null;
|
|
data: DataType;
|
|
};
|
|
/**
|
|
* Gracefully handles a given Promise factory.
|
|
* @example
|
|
* const { error, data } = await until(() => asyncAction())
|
|
*/
|
|
declare const until: <ErrorType extends unknown = Error, DataType extends unknown = unknown>(promise: () => Promise<DataType>) => Promise<AsyncTuple<ErrorType, DataType>>;
|
|
|
|
export { until };
|