vue.config.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. 'use strict';
  2. const path = require('path');
  3. function resolve(dir) {
  4. return path.join(__dirname, dir);
  5. }
  6. const name = process.env.VUE_APP_TITLE || '门店拜访'; // 网页标题
  7. const port = 8888; // 端口
  8. module.exports = {
  9. parallel: false, // 强制关闭多线程构建
  10. // publicPath: process.env.NODE_ENV === "production" ? "/mobile/" : "/",
  11. publicPath: '/mobile/',
  12. outputDir: 'mobile',
  13. assetsDir: 'static',
  14. lintOnSave: false,
  15. productionSourceMap: false,
  16. devServer: {
  17. port: port,
  18. open: true,
  19. proxy: {
  20. [process.env.VUE_APP_BASE_API]: {
  21. target: process.env.VUE_APP_Target,
  22. changeOrigin: true,
  23. pathRewrite: {
  24. ['^' + process.env.VUE_APP_BASE_API]: process.env.VUE_APP_BASE_API + '',
  25. },
  26. },
  27. },
  28. disableHostCheck: true,
  29. },
  30. configureWebpack: {
  31. name: name,
  32. resolve: {
  33. alias: {
  34. '@': resolve('src'),
  35. },
  36. },
  37. },
  38. chainWebpack(config) {
  39. config.plugins.delete('preload'); // TODO: need test
  40. config.plugins.delete('prefetch'); // TODO: need test
  41. config.when(process.env.NODE_ENV !== 'development', (config) => {
  42. config.optimization.runtimeChunk('single'),
  43. {
  44. from: path.resolve(__dirname, './public/robots.txt'), //防爬虫文件
  45. to: './', //到根目录下
  46. };
  47. });
  48. },
  49. css: {
  50. loaderOptions: {
  51. sass: {
  52. // 使用 Dart Sass 配置
  53. implementation: require('sass'),
  54. // 更新为 additionalData 语法
  55. additionalData: `@use "@/assets/styles/variable.scss" as *;`,
  56. },
  57. },
  58. },
  59. };