31 lines
703 B
TypeScript
31 lines
703 B
TypeScript
import type VConsole from "vconsole";
|
|
|
|
let vConsoleInstance: VConsole | undefined;
|
|
let isVConsoleLoading = false;
|
|
|
|
/**
|
|
* 切换移动端调试控制台。
|
|
*/
|
|
export async function toggleVConsole(): Promise<void> {
|
|
if (vConsoleInstance) {
|
|
vConsoleInstance.destroy();
|
|
vConsoleInstance = undefined;
|
|
console.warn("[调试] vConsole 已关闭");
|
|
return;
|
|
}
|
|
if (isVConsoleLoading) {
|
|
return;
|
|
}
|
|
|
|
isVConsoleLoading = true;
|
|
try {
|
|
const { default: VConsole } = await import("vconsole");
|
|
vConsoleInstance = new VConsole();
|
|
console.warn("[调试] vConsole 已启用");
|
|
} catch (error) {
|
|
console.error("[调试] vConsole 启用失败", error);
|
|
} finally {
|
|
isVConsoleLoading = false;
|
|
}
|
|
}
|