- 最近在跟着一個網上的項目進行學習,遇到的第一個問題就是vue中使用svg圖標。基於vue的組件化思想,項目中進行了開發了一個SvgIcon組件。在此,我們要先安裝好"svg-sprite-loader"(這個之後要去學習一下這個庫),反正裝了這個loader能自動的爲我們在#showroot生成一系列東西。
- 接下來遇到的問題是屬於webpack中的配置問題,我曾天真的以爲會智能的在webpack.base.conf.js中自動生成這一系列的配置,這些都是要靠自己配的!正是因爲這個想法,我才被困擾於爲啥svg圖標還未出現
{
test: /\.svg$/,
loader: 'svg-sprite-loader',
include: [resolve('src/icons')],
options: {
symbolId: 'icon-[name]'
}
},
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
// 除了這個目錄下,都要去查找
exclude: [resolve('src/icons')],
options: {
limit: 10000,
name: utils.assetsPath('img/[name].[hash:7].[ext]')
}
}
只要配好這些就可以了