- Vue 3 + TypeScript + Element Plus 前端界面 - Pinia 状态管理 - Vue Router 4 路由管理 - Axios HTTP 客户端 - MSW (Mock Service Worker) 开发环境模拟 - 账户管理界面 (列表、详情、三科目余额展示) - 交易管理界面 (列表、详情) - 对账管理界面 (三账校验) - 完善的 API 客户端封装 - Docker 容器化配置 - Nginx 配置用于生产环境
28 lines
1021 B
JavaScript
28 lines
1021 B
JavaScript
import { getDevtoolsGlobalHook, getTarget, isProxyAvailable } from './env.js';
|
|
import { HOOK_SETUP } from './const.js';
|
|
import { ApiProxy } from './proxy.js';
|
|
export * from './api/index.js';
|
|
export * from './plugin.js';
|
|
export * from './time.js';
|
|
export function setupDevtoolsPlugin(pluginDescriptor, setupFn) {
|
|
const descriptor = pluginDescriptor;
|
|
const target = getTarget();
|
|
const hook = getDevtoolsGlobalHook();
|
|
const enableProxy = isProxyAvailable && descriptor.enableEarlyProxy;
|
|
if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) {
|
|
hook.emit(HOOK_SETUP, pluginDescriptor, setupFn);
|
|
}
|
|
else {
|
|
const proxy = enableProxy ? new ApiProxy(descriptor, hook) : null;
|
|
const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];
|
|
list.push({
|
|
pluginDescriptor: descriptor,
|
|
setupFn,
|
|
proxy,
|
|
});
|
|
if (proxy) {
|
|
setupFn(proxy.proxiedTarget);
|
|
}
|
|
}
|
|
}
|