123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- const path = require("path");
- function resolve(dir) {
- return path.join(__dirname, dir);
- }
- module.exports = {
- publicPath: './',
- outputDir: process.env.VUE_APP_outputDir || 'dist',
- assetsDir: 'static',
- filenameHashing: true,
- lintOnSave: false,
- runtimeCompiler: false,
- transpileDependencies: [],
- productionSourceMap: false,
- css: {
- // 是否使用css分离插件 ExtractTextPlugin
- extract: process.env.NODE_ENV === "production" ? true : false,//是否将组件中的 CSS 提取至一个独立的 CSS 文件中 (而不是动态注入到 JavaScript 中的 inline 代码)。
- sourceMap: false,//是否为 CSS 开启 source map。设置为 true 之后可能会影响构建的性能。
- loaderOptions: {
- sass: {
- prependData: `@import "@/assets/css/variable.scss";`
- }
- },
- requireModuleExtension: true,
- },
- chainWebpack: (config) => {
- // 配置别名
- config.resolve.alias
- .set('@', resolve('src'))
- .set('assets', resolve('src/assets'))
- .set('assetsBig', resolve('src/pages/big-screen/assets'))
- .set('components', resolve('src/components'))
- .set('views', resolve('src/views'))
- .set('api', resolve('src/api'))
- .set('lib', resolve('src/lib'))
- if (process.env.NODE_ENV === "production") {
- // 删除系统默认的splitChunk
- config.optimization.delete("splitChunks");
- }
- },
- configureWebpack: config => {
- // 给输出的js名称添加hash
- config.output.filename = "static/js/[name].[hash].js";
- config.output.chunkFilename = "static/js/[name].[hash].js";
- config.optimization = {
- splitChunks: {
- cacheGroups: {
- // 抽离所有入口的公用资源为一个chunk
- common: {
- name: "chunk-common",
- chunks: "initial",
- minChunks: 2,
- maxInitialRequests: 5,
- minSize: 0,
- priority: 1,
- reuseExistingChunk: true,
- enforce: true
- },
- // 抽离node_modules下的库为一个chunk
- // vendors: {
- // name: "chunk-vendors",
- // test: /[\\/]node_modules[\\/]/,
- // chunks: "initial",
- // priority: 2,
- // reuseExistingChunk: true,
- // enforce: true
- // },
- element: {
- name: "chunk-element-ui",
- test: /[\\/]node_modules[\\/]element-ui[\\/]/,
- chunks: "all",
- priority: 3,
- reuseExistingChunk: true,
- enforce: true
- },
- yhhtUi: {
- name: "chunk-yhht-ui",
- test: /[\\/]node_modules[\\/]yhht-ui[\\/]/,
- chunks: "all",
- priority: 4,
- reuseExistingChunk: true,
- enforce: true
- },
- datav: {
- name: "chunk-datav",
- test: /[\\/]node_modules[\\/]@jiaminghi[\\/]data-view[\\/]/,
- chunks: "all",
- priority: 4,
- reuseExistingChunk: true,
- enforce: true
- },
- }
- }
- };
- },
- // 是否为 Babel 或 TypeScript 使用 thread-loader。该选项在系统的 CPU 有多于一个内核时自动启用,仅作用于生产构建。
- parallel: require('os').cpus().length > 1,
- devServer: {
- proxy: {
- '/project': {
- target: 'http://1.190.195.54:8050',
- pathRewrite: {
- '^/project': ''
- }
- }
- }
- },
- pluginOptions: {
- }
- }
|