- SettingsNav 左导航 7 类 + 顶部搜索(索引匹配 label/desc 高亮定位) - GeneralPanel 拆分 Appearance/Performance/Advanced Section - SettingRow 统一行 + 即时反馈(已保存)+ 下轮生效 badge - 统一组件库 settings.css(scoped 重复 class 抽全局) - 导入导出(默认排除 keyring 密钥) - activeCategory 持久化 + 窄屏折叠 tab
20 lines
770 B
TypeScript
20 lines
770 B
TypeScript
import { createApp } from "vue";
|
|
import App from "./App.vue";
|
|
import router from "./router";
|
|
import i18n from "./i18n";
|
|
import "./styles/global.css";
|
|
import "./styles/ai-md.css";
|
|
import "./styles/components.css";
|
|
import "./components/settings/settings.css"; // UX 重构阶段1:设置统一组件库全局
|
|
|
|
const app = createApp(App);
|
|
|
|
// 全局错误兜底:捕获 Vue runtime 未处理错误(组件渲染/生命周期/事件回调抛错),
|
|
// 仅记录不中断,防止整页白屏。组件级降级 UI 由 ErrorBoundary.vue 负责。
|
|
app.config.errorHandler = (err, instance, info) => {
|
|
const tag = instance?.$options?.name || instance?.$options?.__name || "unknown";
|
|
console.error(`[Vue error] <${tag}> ${info}:`, err);
|
|
};
|
|
|
|
app.use(router).use(i18n).mount("#app");
|