-
Notifications
You must be signed in to change notification settings - Fork 1
/
vue.config.js
136 lines (118 loc) · 4.18 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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
const path = require('path')
const resolve = (dir) => path.join(__dirname, dir)
// 七牛上传插件
// const QiniuPlugin = require('qiniu-webpack-plugin');
// const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
// const path = require('path');
// function resolve (dir) {
// return path.join(__dirname, dir)
// }
module.exports = {
// 项目部署的基础路径
// 我们默认假设你的应用将会部署在域名的根部,
// 比如 https://www.my-app.com/
// 如果你的应用时部署在一个子路径下,那么你需要在这里
// 指定子路径。比如,如果你的应用部署在
// https://www.foobar.com/my-app/
// 那么将这个值改为 `/my-app/`
// baseUrl: '/',
baseUrl: process.env.NODE_ENV === 'production' ? './' : '/',
// 将构建好的文件输出到哪里
outputDir: 'dist',
// 放置静态资源的地方 (js/css/img/font/...)
// assetsDir: '',
// 是否在保存的时候使用 `eslint-loader` 进行检查。
// 有效的值:`ture` | `false` | `"error"`
// 当设置为 `"error"` 时,检查出的错误会触发编译失败。
lintOnSave: true,
// 使用带有浏览器内编译器的完整构建版本
// 查阅 https://cn.vuejs.org/v2/guide/installation.html#运行时-编译器-vs-只包含运行时
// compiler: false,
// babel-loader 默认会跳过 node_modules 依赖。
// 通过这个选项可以显式转译一个依赖。
transpileDependencies: [ /* string or regex */ ],
// 是否为生产环境构建生成 source map?
productionSourceMap: false,
// 调整内部的 webpack 配置。
// 查阅 https://github.com/vuejs/vue-docs-zh-cn/blob/master/vue-cli/webpack.md
chainWebpack: config => {
// 修改插件
config.resolve.alias
.set('@', resolve('src'))
.set('common', resolve('src/common'))
},
configureWebpack: () => {},
// CSS 相关选项
css: {
// 将组件内的 CSS 提取到一个单独的 CSS 文件 (只用在生产环境中)
// 也可以是一个传递给 `extract-text-webpack-plugin` 的选项对象
// extract: true,
// 是否开启 CSS source map?
sourceMap: false,
// 为预处理器的 loader 传递自定义选项。比如传递给
// sass-loader 时,使用 `{ sass: { ... } }`。
// loaderOptions: {},
loaderOptions: {
css: {},
postcss: {
plugins: [
require('autoprefixer')({
browsers: ['last 10 Chrome versions', 'last 5 Firefox versions', 'Safari >= 6', 'ie> 8']
}),
require('postcss-px2rem')({
remUnit: 37.5
})
]
}
}
// 为所有的 CSS 及其预处理文件开启 CSS Modules。
// 这个选项不会影响 `*.vue` 文件。
// modules: false
},
// 在生产环境下为 Babel 和 TypeScript 使用 `thread-loader`
// 在多核机器下会默认开启。
parallel: require('os').cpus().length > 1,
// PWA 插件的选项。
// 查阅 https://github.com/vuejs/vue-docs-zh-cn/blob/master/vue-cli-plugin-pwa/README.md
pwa: {},
// 配置 webpack-dev-server 行为。
devServer: {
open: false, // 配置自启浏览器
host: '0.0.0.0',
port: 8088,
https: false,
hotOnly: false,
proxy: {
'/pai': {
target: 'easy-mock', // 目标接口域名 'http://localhost:8088/api' ===> 'http://www.abc.com/api'
changeOrigin: true, // 是否跨域
pathRewrite: {
'^/api': '/' // 重写接口
}
},
'/admin/index': {
target: 'http://zlc-dev.helloshi.com/index.php/', // 目标接口域名 'http://localhost:8088/api' ===> 'http://www.abc.com/api'
changeOrigin: true
} // 设置代理
},
before: app => {
// `app` 是一个 express 实例
}
},
// configureWebpack: config => {
// if (process.env.NODE_ENV === 'production') {
// // 为生产环境修改配置...
// if (process.env.npm_lifecycle_event === 'analyze') {
// config.plugins.push(
// new BundleAnalyzerPlugin()
// )
// }
// } else {
// // 为开发环境修改配置...
// }
// },
// 第三方插件的选项
pluginOptions: {
},
runtimeCompiler: true
}