vue.config.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. const path = require('path')
  2. const webpack = require('webpack')
  3. function resolve (dir) {
  4. return path.join(__dirname, dir)
  5. }
  6. module.exports = {
  7. publicPath: './',
  8. productionSourceMap: false,
  9. devServer: {
  10. host: '0.0.0.0',
  11. disableHostCheck: true,
  12. proxy: {
  13. '/api': {
  14. target: 'https://pwxdev.cleartv.cn/', // 对应自己的接口
  15. changeOrigin: true,
  16. ws: true,
  17. pathRewrite: {
  18. '^/api': ''
  19. }
  20. }
  21. }
  22. },
  23. configureWebpack: {
  24. plugins: [
  25. new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
  26. new webpack.ProvidePlugin({
  27. $: 'jquery',
  28. jQuery: 'jquery',
  29. 'windows.jQuery': 'jquery'
  30. })
  31. ]
  32. },
  33. css: {
  34. loaderOptions: {
  35. less: {
  36. javascriptEnabled: true
  37. }
  38. }
  39. },
  40. chainWebpack: (config) => {
  41. config.plugin('copy').tap((args) => [[
  42. {
  43. from: './public',
  44. to: './',
  45. toType: 'dir',
  46. ignore: [
  47. 'config.js'
  48. ]
  49. }
  50. ]]
  51. )
  52. config.resolve.alias
  53. .set('@$', resolve('src'))
  54. .set('assets', resolve('src/assets'))
  55. .set('imgs', resolve('src/assets/imgs'))
  56. .set('components', resolve('src/components'))
  57. .set('static', resolve('src/static'))
  58. // config.module.rules.delete('svg') // 重点:删除默认配置中处理svg
  59. // config.module
  60. // .rule('svg-sprite-loader')
  61. // .test(/\.svg$/)
  62. // .include
  63. // .add(resolve('src/icons')) // 处理svg目录
  64. // .add(resolve('font-awesome/fonts'))
  65. // .end()
  66. // .use('svg-sprite-loader')
  67. // .loader('svg-sprite-loader')
  68. // .options({
  69. // symbolId: 'icon-[name]'
  70. // })
  71. }
  72. }