-
Notifications
You must be signed in to change notification settings - Fork 22
/
vue.config.js
74 lines (72 loc) · 1.95 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
const path = require('path')
const IS_PROD = process.env.NODE_ENV === 'production'
function resolve (dir) {
return path.join(__dirname, dir)
}
module.exports = {
pages: {
app: {
title: 'vue-cli-electron-template',
entry: 'src/renderer/index.js',
template: 'public/index.html',
filename: 'index.html'
}
},
publicPath: './',
assetsDir: 'assets',
outputDir: 'dist',
productionSourceMap: !IS_PROD,
devServer: {
// can be overwritten by process.env.HOST
host: 'localhost',
port: 8099
},
chainWebpack: config => {
/* 路径别名,如用`@`指代`src”`等
Path alias, such as "@" for "src", etc. */
config.resolve.alias
.set('@', resolve('src'))
.set('src', resolve('src'))
.set('assets', resolve('src/assets'))
.set('plugins', resolve('src/plugins'))
.set('svg', resolve('src/assets/svg'))
.set('locales', resolve('src/locales'))
.set('backend', resolve('src/backend'))
.set('renderer', resolve('src/renderer'))
.set('main', resolve('src/main'))
.set('views', resolve('src/renderer/views'))
.set('components', resolve('src/renderer/components'))
// svg config
const svgRule = config.module.rule('svg')
svgRule.uses.clear()
svgRule
.use('svg-sprite-loader')
.loader('svg-sprite-loader')
.options({
symbolId: 'icon-[name]'
})
},
pluginOptions: {
electronBuilder: {
mainProcessFile: 'src/main/index.js',
mainProcessWatch: ['src/main'],
nodeIntegration: true,
builderOptions: {
win: {
icon: './public/app.ico'
},
mac: {
icon: './public/app.png'
},
productName: 'vue-cli-electron-template'
}
},
// i18n config
i18n: {
locale: 'zh',
fallbackLocale: 'en',
localeDir: 'locales',
enableInSFC: false
}
}
}