vite打包配置

本文详细解读了Vite和Rollup配置文件中的关键部分,包括插件管理、目录路径、全局样式、开发服务器设置、API代理以及打包构建选项,展示了如何优化项目结构和性能。
摘要由CSDN通过智能技术生成
export default defineConfig({
  // 与插件有关的操作,如自动导入
  plugins: [
    visualizer({ open: true }),
    vue(),
    AutoImport({
      resolvers: [ElementPlusResolver()],
    }),
    Components({
      resolvers: [ElementPlusResolver()],
    }),
  ],
  // 配置目录路径相关操作,如下@的配置
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  },
  // 对全局样式进行相关修改,操作相关操作
  css: {
    preprocessorOptions: {
      scss: {
        additionalData: '@use "@/assets/styles/variables.scss" as *;'
      }
    }
  },
  // 开发服务器选项,配置跨区代理api、端口等操作
  server: {
    host: "0.0.0.0",
    port: 3001, // 服务端口号
    open: true, // 服务启动时是否自动打开浏览器
    cors: true, // 允许跨域
    //配置代理
    proxy: {
      '/api': {
        target: '*****',  // 请求地址
        changeOrigin: true,  // 是否将发送请求host设置为当前的host
        rewrite: (path) => path.replace(/^\/api/, 'api'),
      }
    }
  },
  // 打包构建相关操作
  build: {
    // 配置rollup打包项
    rollupOptions: {
      output: {
        // 入口文件
        // 自己写的js文件
        entryFileNames: `js/[name]-[hash].js`,
        // 引入的相关js、ts文件,比如分包之后的js
        chunkFileNames: `js/[name]-[hash].js`,
        // 写法1
        // [ext] 根据不同的后缀名进行分类
        // assetFileNames: `[ext]/[name]-[hash]`

        // 写法2
        // 函数的形式,可对文件进行相关操作
        assetFileNames: (assetInfo: any) => {

          if (assetInfo.name.endsWith(".css")) {
            return `css/[name]-[hash].css`
          }
          const imgType = ['.png', 'jpg', '.bmp', '.webp', '.svg', 'gif']
          if (imgType.some(ext => assetInfo.name.endsWith(ext))) {
            return `images/[name]-[hash].[ext]`
          }
          return `assets/[name]-[hash].[ext]`
        },
        // 对打包进行处理,项目中会用到相关的库,而打包变动时,
        // 这些库不需要变化,要变的只是我们修改的业务相关的js
        // 所以此操作对不需要变更的库进行统一处理,修改逻辑之后也不会再次进行打包
        manualChunks: (id) => {
          if (id.includes("node_modules")) {
            return `vender`
          }

        }
      },
    }
  },
})

vite官网:构建选项 | Vite 官方中文文档

rollup官网:配置选项 | rollup.js 中文文档 | rollup.js中文网

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值