-
Notifications
You must be signed in to change notification settings - Fork 0
/
vue.config.js
41 lines (39 loc) · 1.15 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
const SpriteLoaderPlugin = require('svg-sprite-loader/plugin')
// vue.config.js
module.exports = {
publicPath: '/svg-sprite-vue-generator/',
outputDir: 'docs',
assetsDir: 'static',
pages: {
index: 'demo/main.js',
},
configureWebpack: {
plugins: [
// NOTE: for extract mode, un support https://github.com/JetBrains/svg-sprite-loader#plain-sprite
new SpriteLoaderPlugin()
]
},
chainWebpack: config => {
// default file-loader
config.module.rule('svg')
.exclude.add(/\.sprite\.(svg)(\?.*)?$/).end()
// add svg-sprite-loader
config.module.rule('svg-sprite')
.test(/\.sprite\.(svg)(\?.*)?$/)
// .use('babel-loader').loader('babel-loader').end()
.use('svg-sprite-loader').loader('svg-sprite-loader').tap(() => {
return {
runtimeGenerator: require.resolve('./lib/svg-sprite-vue-generator'),
runtimeOptions: {
extractCompTagImg: false,
attrs: {},
loadingClass: '',
otherClass: '',
},
extract: true,
publicPath: '/static/'
}
}).end()
.use('svgo-loader').loader('svgo-loader')
}
}