| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- /*
- * @Descripttion:
- * @version: 1.0.0
- * @Author: htang
- * @Date: 2024-07-15 16:33:33
- * @LastEditors: htang
- * @LastEditTime: 2024-08-24 14:38:23
- */
- import { defineConfig, loadEnv } from "vite";
- import vue from "@vitejs/plugin-vue";
- import { OUTPUT_DIR } from './build/constant';
- import path from "path";
- const TimeStamp = new Date().getTime();
- function resolve(url) {
- return path.resolve(__dirname, url);
- }
- // https://vitejs.dev/config/
- export default ({ mode }) => {
- // 获取环境变量
- const env = loadEnv(mode, process.cwd());
- return defineConfig({
- base: './', //env.VITE_APP_BASE_URL, // 动态改变base值
- assetsInclude: [
- "**/*.glb",
- "**/*.gltf",
- "**/*.fbx",
- "**/*.hdr",
- "**/*.json",
- "**/*.mp4",
- "**/*.mov",
- ],
- resolve: {
- alias: {
- "@": resolve("./src"),
- "~@": resolve("./src"),
- },
- // 省略文件后缀
- extensions: [".mjs", ".js", ".jsx", ".json"],
- },
- build: {
- minify: 'esbuild',
- target: 'es2015',
- cssTarget: 'chrome80',
- outDir: OUTPUT_DIR,
- terserOptions: {
- compress: {
- // keep_infinity: true,
- // // Used to delete console in production environment
- // drop_console: VITE_DROP_CONSOLE,
- // drop_debugger: true,
- },
- },
- // Turning off brotliSize display can slightly reduce packaging time
- reportCompressedSize: false,
- chunkSizeWarningLimit: 2000,
- rollupOptions: {
- // 参考:https://blog.cinob.cn/archives/393
- output: {
- // 入口文件名
- entryFileNames: `assets/[name]-${TimeStamp}.js`,
- // 块文件名
- chunkFileNames: `assets/[name]-[hash]-${TimeStamp}.js`,
- // 资源文件名 css 图片等等
- assetFileNames: `assets/[name]-[hash]-balabala-${TimeStamp}.[ext]`,
- }
- }
- },
- envDir: 'env',
- plugins: [vue()],
- });
- };
|