vue.config.js 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  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 || '川仪READOPC' // 网页标题
  7. const port = process.env.port || process.env.npm_config_port || 81 // 端口
  8. // vue.config.js 配置说明
  9. //官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions
  10. // 这里只列一部分,具体配置参考文档
  11. module.exports = {
  12. // 部署生产环境和开发环境下的URL。
  13. // 默认情况下,Vue CLI 会假设你的应用是被部署在一个域名的根路径上
  14. publicPath: process.env.NODE_ENV === "production" ? "/" : "/",
  15. // 在npm run build 或 yarn build 时 ,生成文件的目录名称(要和baseUrl的生产环境路径一致)(默认dist)
  16. outputDir: 'dist',
  17. // 用于放置生成的静态资源 (js、css、img、fonts) 的;(项目打包之后,静态资源会放在这个文件夹下)
  18. assetsDir: 'static',
  19. lintOnSave: process.env.NODE_ENV === 'development',
  20. productionSourceMap: false,
  21. devServer: {
  22. port: port,
  23. // open: true,
  24. },
  25. configureWebpack: {
  26. name: name,
  27. resolve: {
  28. alias: {
  29. '@': resolve('src')
  30. },
  31. fallback: {
  32. path: require.resolve("path-browserify"),
  33. }
  34. },
  35. plugins: [],
  36. },
  37. chainWebpack(config) {
  38. config.plugins.delete('preload') // TODO: need test
  39. config.plugins.delete('prefetch') // TODO: need test
  40. // svg 环境
  41. config.module
  42. .rule('svg')
  43. .exclude.add(resolve('src/assets/icons'))
  44. .end()
  45. config.module
  46. .rule('icons')
  47. .test(/\.svg$/)
  48. .include.add(resolve('src/assets/icons'))
  49. .end()
  50. .use('svg-sprite-loader')
  51. .loader('svg-sprite-loader')
  52. .options({
  53. symbolId: 'icon-[name]'
  54. })
  55. .end()
  56. }
  57. }