import AutoImport from 'unplugin-auto-import/vite' import { NaiveUiResolver } from 'unplugin-vue-components/resolvers' import Components from 'unplugin-vue-components/vite' import { defineConfig } from 'vite' import Uni from '@dcloudio/vite-plugin-uni' import UniKuRoot from '@uni-ku/root' import { resolve } from 'node:path' import UnoCSS from 'unocss/vite' // 获取当前时间戳 const timestamp = new Date().getTime() export default defineConfig({ envDir: './env', // 自定义env目录 resolve: { alias: [ { find: "@", replacement: resolve(process.cwd(), 'src') } ] }, server: { host: '0.0.0.0', // 监听所有网络接口 port: 2367, // 选项写法 proxy: { '/pag': { target: 'https://cdn.tmui.design', changeOrigin: true, rewrite: (path) => path.replace(/^\/api/, '/api') }, } }, plugins: [ Uni(), UniKuRoot(), UnoCSS(), AutoImport({ imports: [ 'vue', { 'naive-ui': [ 'useDialog', 'useMessage', 'useNotification', 'useLoadingBar' ] } ] }), Components({ resolvers: [NaiveUiResolver()] }) ], build: { rollupOptions: { output: { // 输出重构 打包编译后的js文件名称,添加时间戳 entryFileNames: `js/[name].${timestamp}.js`, chunkFileNames: `js/[name].${timestamp}.js`, assetFileNames: `assets/[name].${timestamp}.[ext]` } } }, css: { extract: { // css重构 打包编译后的css文件名称,添加时间戳 filename: `css/[name].${timestamp}.css`, chunkFilename: `css/[name].${timestamp}.css` }, preprocessorOptions: { scss: { additionalData: `@import "@/static/css/color.scss";`, }, }, } })