-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvue.config.js
98 lines (80 loc) · 3.22 KB
/
vue.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
/* eslint-disable no-param-reassign */
/* eslint-disable @typescript-eslint/no-var-requires */
/* eslint-disable global-require */
const { BundleAnalyzerPlugin } = require('webpack-bundle-analyzer');
module.exports = {
// 项目部署的基础路径(服务器部署的目录)
publicPath: '/',
// 将构建好的文件输出到哪里
outputDir: 'dist',
// 放置静态资源的地方 (js/css/img/font/...)
assetsDir: 'static',
// 是否在保存的时候使用 `eslint-loader` 进行检查。
// 有效的值:`ture` | `false` | `"error"`
// 当设置为 `"error"` 时,检查出的错误会触发编译失败。
lintOnSave: true,
// 使用带有浏览器内编译器的完整构建版本
// @see https://cn.vuejs.org/v2/guide/installation.html#运行时-编译器-vs-只包含运行时
// compiler: false,
// babel-loader 默认会跳过 node_modules 依赖。
// 通过这个选项可以显式转译一个依赖。
// transpileDependencies: [/* string or regex */],
// 是否使用包含运行时编译器的Vue核心的构建
runtimeCompiler: false,
// 是否为生产环境构建生成 source map?
productionSourceMap: false,
// 调整内部的 webpack 配置。
// @see https://github.com/vuejs/vue-docs-zh-cn/blob/master/vue-cli/webpack.md
// chainWebpack: () => {},
// configureWebpack: () => {},
// CSS 相关选项
css: {
// 将组件内的 CSS 提取到一个单独的 CSS 文件 (只用在生产环境中)
// 也可以是一个传递给 `extract-text-webpack-plugin` 的选项对象
extract: true,
// 是否开启 CSS source map?
sourceMap: false,
// 为预处理器的 loader 传递自定义选项。比如传递给
// sass-loader 时,使用 `{ sass: { ... } }`。
loaderOptions: {
// todo less-loader options
},
// 设置false,为所有的 CSS 及其预处理文件开启 CSS Modules。
// 这个选项不会影响 `*.vue` 文件。
// @see https://cli.vuejs.org/zh/guide/css.html#css-modules
// requireModuleExtension: false
},
// 在生产环境下为 Babel 和 TypeScript 使用 `thread-loader`
// 在多核机器下会默认开启。
parallel: require('os').cpus().length > 1,
// PWA 插件的选项。
// @see https://github.com/vuejs/vue-docs-zh-cn/blob/master/vue-cli-plugin-pwa/README.md
pwa: {},
// 配置 webpack-dev-server 行为。
// devServer: {
// open: process.platform === 'darwin',
// host: 'localhost',
// port: 8888,
// https: false,
// hotOnly: false,
// open: true,
// // @see https://github.com/vuejs/vue-docs-zh-cn/blob/master/vue-cli/cli-service.md#配置代理
// proxy: 'http://localhost:3001', // string | Object
// before: app => {}
// },
configureWebpack: (config) => {
if (process.env.NODE_ENV === 'production') {
// 为生产环境修改配置
// 去除console
config.optimization.minimizer[0].options.terserOptions.compress.drop_console = true;
if (process.env.APP_NODE_ENV === 'analysis') {
// 分析打包依赖
config.plugins.push(new BundleAnalyzerPlugin());
}
} else {
// 为开发环境修改配置
}
},
// 第三方插件的选项
pluginOptions: {},
};