vue.config.js 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  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. // publicPath: process.env.NODE_ENV === "production" ? "/mobile/" : "/",
  10. publicPath: '/mobile/',
  11. outputDir: 'mobile',
  12. assetsDir: 'static',
  13. lintOnSave: false,
  14. productionSourceMap: false,
  15. devServer: {
  16. port: port,
  17. open: true,
  18. proxy: {
  19. [process.env.VUE_APP_BASE_API]: {
  20. target: process.env.VUE_APP_Target,
  21. changeOrigin: true,
  22. pathRewrite: {
  23. ['^' + process.env.VUE_APP_BASE_API]: process.env.VUE_APP_BASE_API + '',
  24. },
  25. },
  26. },
  27. disableHostCheck: true,
  28. },
  29. configureWebpack: {
  30. name: name,
  31. resolve: {
  32. alias: {
  33. '@': resolve('src'),
  34. },
  35. },
  36. },
  37. chainWebpack(config) {
  38. config.plugins.delete('preload'); // TODO: need test
  39. config.plugins.delete('prefetch'); // TODO: need test
  40. config.when(process.env.NODE_ENV !== 'development', (config) => {
  41. config.optimization.runtimeChunk('single'),
  42. {
  43. from: path.resolve(__dirname, './public/robots.txt'), //防爬虫文件
  44. to: './', //到根目录下
  45. };
  46. });
  47. },
  48. css: {
  49. loaderOptions: {
  50. sass: {
  51. //注意:sass-loader将文件引用写入每个组件,适合全局引入变量,但不适合在单页面应用中添加样式,如果是全局样式(非变量),建议在main.js里引入
  52. // 路径支持别名的写法,案例就是用了路径别名,如果你没有在项目里设置,也可以自己手动设置即可
  53. // sass-loader v10以下老版本 用的是prependData,不是additionalData
  54. // 给 sass-loader 传递选项
  55. // 默认情况下 `sass` 选项会同时对 `sass` 和 `scss` 语法同时生效
  56. // 因为 `scss` 语法在内部也是由 sass-loader 处理的
  57. // 但是在配置 `data` 选项的时候
  58. // `scss` 语法会要求语句结尾必须有分号,`sass` 则要求必须没有分号
  59. // 在这种情况下,我们可以使用 `scss` 选项,对 `scss` 语法进行单独配置
  60. additionalData: `@import "@/assets/styles/variable.scss";`,
  61. },
  62. },
  63. },
  64. };