mirror of
https://github.com/router-for-me/Cli-Proxy-API-Management-Center.git
synced 2026-02-02 19:00:49 +08:00
refactor(usage): load stats via config events
This commit is contained in:
1
app.js
1
app.js
@@ -149,6 +149,7 @@ class CLIProxyManager {
|
|||||||
this.initUiVersion();
|
this.initUiVersion();
|
||||||
this.initializeTheme();
|
this.initializeTheme();
|
||||||
this.registerSettingsListeners();
|
this.registerSettingsListeners();
|
||||||
|
this.registerUsageListeners();
|
||||||
this.checkLoginStatus();
|
this.checkLoginStatus();
|
||||||
this.bindEvents();
|
this.bindEvents();
|
||||||
this.setupNavigation();
|
this.setupNavigation();
|
||||||
|
|||||||
@@ -328,9 +328,6 @@ export const connectionModule = {
|
|||||||
// 认证文件需要单独加载,因为不在配置中
|
// 认证文件需要单独加载,因为不在配置中
|
||||||
await this.loadAuthFiles(keyStats);
|
await this.loadAuthFiles(keyStats);
|
||||||
|
|
||||||
// 使用统计需要单独加载,复用已获取的usage数据
|
|
||||||
await this.loadUsageStats(usageData);
|
|
||||||
|
|
||||||
// 加载配置文件编辑器内容
|
// 加载配置文件编辑器内容
|
||||||
await this.loadConfigFileEditor(forceRefresh);
|
await this.loadConfigFileEditor(forceRefresh);
|
||||||
this.refreshConfigEditor();
|
this.refreshConfigEditor();
|
||||||
|
|||||||
@@ -741,5 +741,18 @@ export const usageModule = {
|
|||||||
getTokensChartData,
|
getTokensChartData,
|
||||||
switchRequestsPeriod,
|
switchRequestsPeriod,
|
||||||
switchTokensPeriod,
|
switchTokensPeriod,
|
||||||
updateApiStatsTable
|
updateApiStatsTable,
|
||||||
|
registerUsageListeners
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 订阅全局事件,基于配置加载结果渲染使用统计
|
||||||
|
export function registerUsageListeners() {
|
||||||
|
if (!this.events || typeof this.events.on !== 'function') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.events.on('data:config-loaded', (event) => {
|
||||||
|
const detail = event?.detail || {};
|
||||||
|
const usageData = detail.usageData || null;
|
||||||
|
this.loadUsageStats(usageData);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user