vue.config.js 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. const { defineConfig } = require("@vue/cli-service");
  2. const path = require('path');
  3. const config = require('./config');
  4. const IS_PRODUCTION = process.env.NODE_ENV === 'production';
  5. // 当前博物馆
  6. const MUSEUM = process.env.MUSEUM;
  7. if (MUSEUM != null) {
  8. console.log('当前博物馆:', MUSEUM);
  9. }
  10. module.exports = defineConfig({
  11. transpileDependencies: true,
  12. lintOnSave: false,
  13. publicPath: IS_PRODUCTION ? config.publicPath : '/',
  14. outputDir: (IS_PRODUCTION && !!MUSEUM) ? `build/${MUSEUM}` : 'build',
  15. // 根据博物馆隔离
  16. assetsDir: path.posix.join(config.assetsDir, MUSEUM || ''),
  17. configureWebpack: {
  18. resolve: {
  19. symlinks: false,
  20. alias: {
  21. '@': path.join(__dirname, 'src'),
  22. },
  23. },
  24. },
  25. chainWebpack: (webpackConfig) => {
  26. if (MUSEUM != null) {
  27. const extensions = webpackConfig.resolve.extensions.values();
  28. for (let i = extensions.length - 1; i >= 0; i--) {
  29. webpackConfig.resolve.extensions.prepend(`.${MUSEUM}${extensions[i]}`);
  30. }
  31. }
  32. }
  33. });