Optimize admin web bundle

This commit is contained in:
2026-07-07 13:03:00 +08:00
parent 55b7c5b0ea
commit bcdf91c85d
6 changed files with 127 additions and 5 deletions

View File

@@ -1,8 +1,64 @@
import ElementPlus from "element-plus";
import "element-plus/dist/index.css";
import {
ElButton,
ElCollapse,
ElCollapseItem,
ElDatePicker,
ElDrawer,
ElForm,
ElFormItem,
ElInput,
ElInputNumber,
ElOption,
ElSelect,
ElSwitch,
ElTabPane,
ElTable,
ElTableColumn,
ElTabs,
vLoading,
} from "element-plus";
import "element-plus/theme-chalk/base.css";
import "element-plus/theme-chalk/el-button.css";
import "element-plus/theme-chalk/el-collapse.css";
import "element-plus/theme-chalk/el-date-picker.css";
import "element-plus/theme-chalk/el-drawer.css";
import "element-plus/theme-chalk/el-form.css";
import "element-plus/theme-chalk/el-input.css";
import "element-plus/theme-chalk/el-input-number.css";
import "element-plus/theme-chalk/el-loading.css";
import "element-plus/theme-chalk/el-message.css";
import "element-plus/theme-chalk/el-option.css";
import "element-plus/theme-chalk/el-select.css";
import "element-plus/theme-chalk/el-switch.css";
import "element-plus/theme-chalk/el-table.css";
import "element-plus/theme-chalk/el-tabs.css";
import { createApp } from "vue";
import App from "./App.vue";
import "./styles.css";
createApp(App).use(ElementPlus).mount("#app");
const app = createApp(App);
[
ElButton,
ElCollapse,
ElCollapseItem,
ElDatePicker,
ElDrawer,
ElForm,
ElFormItem,
ElInput,
ElInputNumber,
ElOption,
ElSelect,
ElSwitch,
ElTabPane,
ElTable,
ElTableColumn,
ElTabs,
].forEach((component) => {
app.use(component);
});
app.directive("loading", vLoading);
app.mount("#app");

View File

@@ -3,6 +3,28 @@ import { defineConfig } from "vite";
export default defineConfig({
plugins: [vue()],
build: {
rollupOptions: {
output: {
manualChunks(id) {
if (!id.includes("node_modules")) return undefined;
if (id.includes("element-plus/es/components/table")) return "el-table";
if (
id.includes("/vue/") ||
id.includes("@vue/") ||
id.includes("@vueuse") ||
id.includes("async-validator") ||
id.includes("@popperjs") ||
id.includes("@floating-ui") ||
id.includes("dayjs")
) {
return "vendor";
}
return undefined;
},
},
},
},
server: {
host: "127.0.0.1",
port: 5174,