vite.config.ts 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import { defineConfig } from "vite";
  2. import { resolve } from "path";
  3. import vue from "@vitejs/plugin-vue";
  4. import { generateDTS } from "./generate-ts";
  5. let app = "";
  6. if (process.argv.length > 4) {
  7. app = process.argv[process.argv.length - 1].trim();
  8. }
  9. const enter = app ? `src/app/${app}/` : `src/board/`;
  10. const name = app ? app : "board";
  11. // https://vitejs.dev/config/
  12. export default defineConfig({
  13. build: {
  14. lib: {
  15. entry: resolve(__dirname, enter, `index.ts`),
  16. name: name,
  17. // the proper extensions will be added
  18. fileName: name,
  19. },
  20. rollupOptions: {
  21. // 确保外部化处理那些你不想打包进库的依赖
  22. external: ["vue"],
  23. output: {
  24. // 在 UMD 构建模式下为这些外部化的依赖提供一个全局变量
  25. globals: {
  26. vue: "Vue",
  27. },
  28. },
  29. },
  30. },
  31. plugins: [
  32. vue(),
  33. {
  34. name: "ts-generate",
  35. closeBundle: async () => {
  36. await generateDTS(app);
  37. },
  38. },
  39. ],
  40. server: {
  41. port: 9005,
  42. },
  43. });