完成了 BOM 管理和生产管理,完成部分发料单、采购计划和调拨单。
This commit is contained in:
76
node/plugins.ts
Normal file
76
node/plugins.ts
Normal file
@@ -0,0 +1,76 @@
|
||||
import vue from "@vitejs/plugin-vue";
|
||||
import vueJsx from "@vitejs/plugin-vue-jsx";
|
||||
import { resolve } from "path";
|
||||
import { createSvgIconsPlugin } from "vite-plugin-svg-icons";
|
||||
import { createStyleImportPlugin, ElementPlusResolve } from "vite-plugin-style-import";
|
||||
import eslintPlugin from "vite-plugin-eslint";
|
||||
import progress from "vite-plugin-progress";
|
||||
import ServerUrlCopy from "vite-plugin-url-copy";
|
||||
import vueDevTools from "vite-plugin-vue-devtools";
|
||||
import { visualizer } from "rollup-plugin-visualizer";
|
||||
import AutoImport from "unplugin-auto-import/vite";
|
||||
import Components from "unplugin-vue-components/vite";
|
||||
import { ElementPlusResolver } from "unplugin-vue-components/resolvers";
|
||||
import { configCompressPlugin } from "./compress";
|
||||
|
||||
export function getPluginsList(command: string, viteEnv: ImportMetaEnv) {
|
||||
const lifecycle = process.env.npm_lifecycle_event;
|
||||
return [
|
||||
vue(),
|
||||
vueJsx(),
|
||||
viteEnv.VITE_DEVTOOLS && vueDevTools(),
|
||||
eslintPlugin({ cache: false }), // EsLint 报错信息显示在浏览器界面上
|
||||
ServerUrlCopy({
|
||||
qrcode: {
|
||||
disabled: true, // 是否生成二维码
|
||||
},
|
||||
}),
|
||||
|
||||
progress(),
|
||||
!viteEnv.VITE_LOAD_ALL_EP_STYLE
|
||||
? createStyleImportPlugin({
|
||||
resolves: [ElementPlusResolve()],
|
||||
libs: [
|
||||
{
|
||||
libraryName: "element-plus",
|
||||
esModule: true,
|
||||
resolveStyle: name => {
|
||||
if (!name.startsWith("el-")) return "";
|
||||
return `element-plus/theme-chalk/src/${name.replace(/^el-/, "")}.scss`;
|
||||
},
|
||||
},
|
||||
],
|
||||
})
|
||||
: undefined,
|
||||
|
||||
AutoImport({
|
||||
imports: ["vue", "vue-router", "pinia"], // 自动引入 vue 的 ref、toRefs、onMounted 等,无需在页面中再次引入
|
||||
dts: "src/types/auto-import.d.ts", // 生成在 src 路径下名为 auto-import.d.ts 的声明文件
|
||||
eslintrc: {
|
||||
enabled: false, // 改为 true 用于生成 eslint 配置。生成后改回 false,避免重复生成消耗
|
||||
},
|
||||
resolvers: !viteEnv.VITE_LOAD_ALL_EP_COMPONENTS ? [ElementPlusResolver()] : [],
|
||||
}),
|
||||
|
||||
!viteEnv.VITE_LOAD_ALL_EP_COMPONENTS
|
||||
? Components({
|
||||
resolvers: [ElementPlusResolver({ importStyle: "sass" })],
|
||||
dirs: "src/components", // 自定引入需要扫描的组件路径
|
||||
dts: "src/types/auto-components.d.ts", // 生成在 src 路径下名为 auto-components.d.ts 的声明文件
|
||||
directoryAsNamespace: true,
|
||||
})
|
||||
: undefined,
|
||||
|
||||
// 使用 svg 图标
|
||||
createSvgIconsPlugin({
|
||||
iconDirs: [resolve(process.cwd(), "src/common/assets/icons")],
|
||||
symbolId: "icon-[dir]-[name]",
|
||||
}),
|
||||
|
||||
viteEnv.VITE_BUILD_GZIP && configCompressPlugin(viteEnv.VITE_COMPRESSION),
|
||||
|
||||
// 打包分析
|
||||
(lifecycle === "report" || viteEnv.VITE_REPORT) &&
|
||||
visualizer({ open: true, brotliSize: true, filename: "report.html" }),
|
||||
];
|
||||
}
|
||||
Reference in New Issue
Block a user