10.10综合交易所原始源码-管理后台
1
admin
2026-01-10 6345eb1417e605b6e9e191ba176520982145d090
vue.config.js
New file
@@ -0,0 +1,103 @@
'use strict'
const path = require('path')
function resolve(dir) {
   return path.join(__dirname, dir)
}
const port = process.env.port || process.env.npm_config_port || 9528
module.exports = {
   publicPath: './',
   outputDir: 'dist',
   assetsDir: 'static',
   lintOnSave: process.env.NODE_ENV === 'development',
   productionSourceMap: false,
   devServer: {
      port: port,
      open: true,
      overlay: {
         warnings: false,
         errors: true
      },
      watchOptions: {
         // 只监听项目根目录下的文件(替换为你的项目实际路径)
         // 例如:项目在 D:\data_vue\0708-1\manage-vue-manage_Andy
         cwd: path.resolve(__dirname), // 限制监听范围为当前项目目录
         ignored: [
            'D:/DumpStack.log.tmp',
            'D:/*',
            '**/node_modules',
            '**/.git'
         ]
      }
   },
   configureWebpack: {
      resolve: {
         alias: {
            '@': resolve('src')
         }
      }
   },
   chainWebpack(config) {
      config.plugin('preload').tap(() => [{
         rel: 'preload',
         fileBlacklist: [/\.map$/, /hot-update\.js$/, /runtime\..*\.js$/],
         include: 'initial'
      }])
      config.plugins.delete('prefetch')
      config.module
         .rule('svg')
         .exclude.add(resolve('src/icons'))
         .end()
      config.module
         .rule('icons')
         .test(/\.svg$/)
         .include.add(resolve('src/icons'))
         .end()
         .use('svg-sprite-loader')
         .loader('svg-sprite-loader')
         .end()
      config
         .when(process.env.NODE_ENV !== 'development',
            config => {
               config
                  .plugin('ScriptExtHtmlWebpackPlugin')
                  .after('html')
                  .use('script-ext-html-webpack-plugin', [{
                     // `runtime` must same as runtimeChunk name. default is `runtime`
                     inline: /runtime\..*\.js$/
                  }])
                  .end()
               config
                  .optimization.splitChunks({
                     chunks: 'all',
                     cacheGroups: {
                        libs: {
                           name: 'chunk-libs',
                           test: /[\\/]node_modules[\\/]/,
                           priority: 10,
                           chunks: 'initial' // only package third parties that are initially dependent
                        },
                        elementUI: {
                           name: 'chunk-elementUI', // split elementUI into a single package
                           priority: 20, // the weight needs to be larger than libs and app or it will be packaged into libs or app
                           test: /[\\/]node_modules[\\/]_?element-ui(.*)/ // in order to adapt to cnpm
                        },
                        commons: {
                           name: 'chunk-commons',
                           test: resolve('src/components'), // can customize your rules
                           minChunks: 3, //  minimum common number
                           priority: 5,
                           reuseExistingChunk: true
                        }
                     }
                  })
               // https:// webpack.js.org/configuration/optimization/#optimizationruntimechunk
               config.optimization.runtimeChunk('single')
            }
         )
   }
}