vue.config.js 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. const webpack = require('webpack')
  2. const WebpackZipPlugin = require('webpack-zip-plugin')
  3. const path = require('path')
  4. function resolve(dir) {
  5. return path.join(__dirname, dir)
  6. }
  7. module.exports = {
  8. devServer: {
  9. open: process.platform === 'darwin',
  10. host: '0.0.0.0',
  11. port: 8080,
  12. https: false,
  13. hotOnly: false,
  14. },
  15. outputDir: 'app/matrix/' + process.env.VUE_APP_M3_APP,
  16. productionSourceMap: false,
  17. configureWebpack: config => {
  18. // 生产环境
  19. if (process.env.NODE_ENV === 'production') {
  20. return {
  21. plugins: [
  22. new webpack.ProvidePlugin({
  23. }),
  24. new WebpackZipPlugin({
  25. initialFile: 'app',
  26. endPath: './',
  27. zipName: process.env.VUE_APP_M3_APP+'.zip',
  28. //frontShell: 'sed -i \'\' \'s/src="/src="\\/static\\/app\\/matrix\\/m3event/g\; s/href="/href="\\/static\\/app\\/matrix\\/m3event/g\' ./app/matrix/m3event/index.html',
  29. //frontShell: 'sed -i \'\' \'s/src="/src="\\/static\\/app\\/matrix\\/m3event/g\; s/href="/href="\\/static\\/app\\/matrix\\/m3event/g\' ./app/matrix/m3event/index.html',
  30. behindShell: './deploy.sh ' + process.env.VUE_APP_M3_HOST + ' ' + process.env.VUE_APP_M3_COMPANY + ' ' + process.env.VUE_APP_M3_USERNAME + ' "' + process.env.VUE_APP_M3_PASSWORD + '" ' + process.env.VUE_APP_M3_APP+".zip"
  31. })
  32. ]
  33. }
  34. }
  35. },
  36. chainWebpack(config) {
  37. // set svg-sprite-loader
  38. config.module
  39. .rule('svg')
  40. .exclude.add(resolve('src/icons'))
  41. .end()
  42. config.module
  43. .rule('icons')
  44. .test(/\.svg$/)
  45. .include.add(resolve('src/icons'))
  46. .end()
  47. .use('svg-sprite-loader')
  48. .loader('svg-sprite-loader')
  49. .options({
  50. symbolId: 'icon-[name]'
  51. })
  52. .end()
  53. },
  54. publicPath: process.env.NODE_ENV === 'production'?'/static/app/matrix/'+process.env.VUE_APP_M3_APP:''
  55. }