【问题标题】:How to avoid vite build deleting inside of "dist" directory?如何避免在“dist”目录中删除 vite 构建?
【发布时间】:2022-02-05 03:45:26
【问题描述】:

我想通过 vite 创建多个库,所以我先尝试“rollupOptions”。喜欢,

import { defineConfig } from 'vite'

export default defineConfig({
  build: {
    rollupOptions: {
      input: {
        "qy-viewer": 'src/qy-viewer.ts',
        "qy-swiper": 'src/qy-swiper.ts'
      }
    }
  }
})

但这会产生有趣的结果,包括类似哈希的字符串,例如 qy-swiper.f3fc032d.js
这是没用的,所以我放弃了这种方法。

接下来我尝试准备多个 vite 配置文件。喜欢,

vite.qy-swiper.config.ts

import { defineConfig } from 'vite'

export default defineConfig({
  build: {
    lib: {
      entry: 'src/qy-swiper.ts',
      name: 'QySwiper',
      fileName: (format) => `qy-swiper.${format}.js`
    },
    rollupOptions: {
    }
  }
})

vite.qy-viewer.config.ts

import { defineConfig } from 'vite'

export default defineConfig({
  build: {
    lib: {
      entry: 'src/qy-viewer.ts',
      name: 'QyViewer',
      fileName: (format) => `qy-viewer.${format}.js`
    },
    rollupOptions: {
    }
  }
})

package.json

{
  "scripts": {
    "build:swiper": "tsc && vite build --config vite.qy-swiper.config.ts",
    "build:viewer": "tsc && vite build --config vite.qy-viewer.config.ts",
    "build:lib": "npm run build:swiper && npm run build:viewer"
  },
}

当我独立执行npm run build:swipernpm run build:viewer 时,这工作得很好,但是一旦我执行npm run build:lib,只会创建qy-viewer。
有什么办法可以避免vite build删除dist目录下的文件?

【问题讨论】:

    标签: javascript typescript build vite


    【解决方案1】:

    build.emptyOutDir 设置为false

    import { defineConfig } from 'vite'
    
    export default defineConfig({
      build: {
        emptyOutDir: false,
      },
      ⋮
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-12-09
      • 2019-10-23
      • 2013-01-14
      • 2017-09-27
      • 2016-10-16
      • 1970-01-01
      • 1970-01-01
      • 2013-10-17
      相关资源
      最近更新 更多