vite打包

1.本地模拟服务器环境打开
http-server或者live-server ,这里我用的是:

npm install live-server -g

安装好后,在打包默认的路径dist下进行访问,输入命令 live-server 浏览器会新打开一个页面,即是最终打包后要预览的页面
2.打包配置

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'


// https://vitejs.dev/config/
export default defineConfig({
  publicPath: './',
  base: '/',
  plugins: [vue(),
  AutoImport({
    resolvers: [ElementPlusResolver()],
  }),
  Components({
    resolvers: [ElementPlusResolver()],
  }),
  ],
  build: {
    target: 'esnext', // 设置构建目标环境,可以是'es2015'等
    outDir: 'dist', // 构建时输出目录
    assetsDir: 'assets', // 放置生成的静态资源的目录
    minify: 'terser', // 构建时是否进行代码压缩
    // terserOptions: { // 传递给Terser的更多选项
    //   compress: {
    //     drop_console: true, // 是否删除所有的`console`语句
    //   },
    // },
    rollupOptions: { // 自定义Rollup的选项
      output: {
        entryFileNames: 'js/[name].js',//入口文件
        // entryFileNames: 'js/[name]-[hash].js',//入口文件
        chunkFileNames: 'js/[name].js',//分包引入文件
        // chunkFileNames: 'js/[name]-[hash].js',//分包引入文件
        // assetFileNames: '[ext]/[name]-[hash].[ext]',//静态文件
        assetFileNames(assetInfo){
          console.log(assetInfo)
          //文件名称
          if (assetInfo.name.endsWith('.css')) {
            return 'css/[name].css'
            // return 'css/[name]-[hash].css'
          }
          //图片名称
          //定义图片后缀
          const imgExts = ['.png', '.jpg', '.jpeg', '.webp', '.gif', '.svg','.ico']
          if(imgExts.some(ext => assetInfo.name.endsWith(ext))){
            return 'imgs/[name].[ext]'
            // return 'imgs/[name]-[hash].[ext]'
          }
          //剩余资源文件
          return 'assets/[name].[ext]'
          // return 'assets/[name]-[hash].[ext]'
        }
      },
    },
  },
})

image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容