vite.config.js 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. // vite.config.js
  2. import {
  3. resolve
  4. } from 'path';
  5. import {
  6. defineConfig
  7. } from 'vite';
  8. import vue from '@vitejs/plugin-vue';
  9. import PkgConfig from "vite-plugin-package-config";
  10. import OptimizationPersist from "vite-plugin-optimize-persist";
  11. // import cesium from 'vite-plugin-cesium';
  12. // https://vitejs.dev/config/
  13. export default defineConfig({
  14. // 配置需要使用的插件列表
  15. // plugins: [vue(), cesium()],
  16. plugins: [
  17. vue(),
  18. PkgConfig(),
  19. OptimizationPersist()
  20. ],
  21. /* 开发或生产环境服务的公共基础路径 */
  22. base: './',
  23. resolve: {
  24. alias: {
  25. // 设置别名
  26. '@': resolve(__dirname, './src')
  27. },
  28. //导入时想要省略的扩展名列表
  29. extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json']
  30. },
  31. /* 服务器配置 */
  32. server: {
  33. /* 端口 */
  34. port: 8000,
  35. /* 地址 */
  36. host: "0.0.0.0",
  37. /* 编译后是否打开浏览器 */
  38. open: true,
  39. /* 是否开启https */
  40. https: false,
  41. },
  42. /* 打包配置 */
  43. build: {
  44. // 在 outDir 中生成 manifest.json
  45. manifest: false,
  46. /**
  47. * 设置最终构建的浏览器兼容目标。默认值是一个 Vite 特有的值——'modules',这是指 支持原生 ES 模块的浏览器。
  48. */
  49. target: 'modules',
  50. /**
  51. * 指定输出路径(相对于 项目根目录).
  52. * @default 'dist'
  53. */
  54. outDir: "dist",
  55. /**
  56. * 启用/禁用 CSS 代码拆分
  57. */
  58. cssCodeSplit: true,
  59. /**
  60. * 设置为 false 可以禁用最小化混淆,或是用来指定是应用哪种混淆器 boolean | 'terser' | 'esbuild'
  61. */
  62. minify: 'terser',
  63. /**
  64. * 构建库
  65. */
  66. lib: {
  67. //指定组件编译入口文件
  68. // 也可以是字典或多个入口点的数组
  69. entry: resolve(__dirname, "./src/jtMap3d/index.js"),
  70. //暴漏的全局变量 输出文件存放路径,不起作用,但是不能删除
  71. name: 'MyLib',
  72. //输出文件的名称
  73. //将添加适当的扩展名
  74. fileName: 'jt3dSDK/jt3d'
  75. },
  76. /**
  77. * 自定义底层的 Rollup 打包配置
  78. */
  79. rollupOptions: {
  80. // 覆盖默认的 .html 入口
  81. input: './src/jtMap3d/index.js',
  82. output: {
  83. //css文件名
  84. assetFileNames: 'jt3dSDK/index.[ext]'
  85. }
  86. }
  87. },
  88. })