vite.config.ts 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. import { defineConfig } from 'vite'
  2. import vue from '@vitejs/plugin-vue'
  3. import fs from 'fs'
  4. import { createServer as createLangServer } from './scripts/lang.js'
  5. import { resolve } from 'path'
  6. const outDir = resolve(process.env.PWD, process.argv[process.argv.length - 1])
  7. // https://vitejs.dev/config/
  8. export default async ({ mode }) => {
  9. const langProt = 9091
  10. const input: { [key in string]: string } = {}
  11. if (process.argv.includes('lang')) {
  12. await createLangServer(langProt)
  13. input.lang = resolve(__dirname, 'lang.html')
  14. } else {
  15. input.main = resolve(__dirname, 'index.html')
  16. }
  17. console.log(input)
  18. return defineConfig({
  19. build: {
  20. rollupOptions: {
  21. input
  22. },
  23. outDir: fs.existsSync(outDir) ? outDir : './dist'
  24. },
  25. plugins: [vue()],
  26. base: './',
  27. assetsInclude: ['public/**/*'],
  28. resolve: {
  29. extensions: ['.js', '.ts', '.json', '.vue'],
  30. alias: [
  31. {
  32. find: '@',
  33. replacement: resolve(__dirname, './src')
  34. },
  35. {
  36. find: 'bill',
  37. replacement: resolve(__dirname, './src/components/bill-ui')
  38. }
  39. ]
  40. },
  41. // server: {
  42. // host: '0.0.0.0',
  43. // port: 5173,
  44. // open: true,
  45. // proxy: {
  46. // '/api': {
  47. // target: 'http://192.168.0.152:8088/',
  48. // changeOrigin: true,
  49. // rewrite: path => path.replace(/^\/api/, '')
  50. // }
  51. // }
  52. // }
  53. })
  54. }