// Plugins import vue from '@vitejs/plugin-vue' import vuetify, { transformAssetUrls } from 'vite-plugin-vuetify' import AutoImport from 'unplugin-auto-import/vite' import Components from 'unplugin-vue-components/vite' import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' // Utilities import { defineConfig } from 'vite' import { fileURLToPath, URL } from 'node:url' // https://vitejs.dev/config/ export default defineConfig({ build: { rollupOptions: { output: { chunkFileNames: 'js/[name]-[hash].js', // 引入文件名的名称 entryFileNames: 'js/[name]-[hash].js', // 包的入口文件名称 // assetFileNames: '[ext]/[name].[ext]', // 资源文件像 字体,图片等 // chunkFileNames: 'js/[name]-[hash].js', // 引入文件名的名称 // entryFileNames: 'js/[name]-[hash].js', // 包的入口文件名称 // assetFileNames: '[ext]/[name]-[hash].[ext]', // 资源文件像 字体,图片等 manualChunks(id) { // if (id.includes("node_modules")) { // return "vendor" //代码分割为第三方包 // } // if (id.includes("src")) { // return "views" //代码分割为业务视图 // } if (id.includes("sfykf")) { return "sfykf" //代码分割为common页面登录页 } } } }, // lib: { // entry: resolve(__dirname, './src/main.js'), // 设置入口文件【这里也可以直接引用插件.vue根组件】 // name: 'helloword', // 起个名字,安装、引入用 // fileName: (format) => `helloword.${format}.js`, // 打包后的文件名【可以自定义】 // formats: ['umd'] // }, cssCodeSplit: false, // jsCodeSplit: false, chunkSizeWarningLimit: 512 }, plugins: [ vue({ template: { transformAssetUrls } }), // https://github.com/vuetifyjs/vuetify-loader/tree/next/packages/vite-plugin vuetify({ autoImport: true, }), AutoImport({ resolvers: [ElementPlusResolver()], }), Components({ resolvers: [ElementPlusResolver()], }), ], define: { 'process.env': {} }, resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) }, extensions: [ '.js', '.json', '.jsx', '.mjs', '.ts', '.tsx', '.vue', ], }, server: { port: 3000, // proxy: { // "/biobank": { // target: "http://114.132.224.5:7001/biobank", // changeOrigin: true, // rewrite: (path) => path.replace(/^\/biobank/, ""), // }, // }, }, })