我正在尝试使用 raw-loader 在 Vue 组件中显示原始 svg。但是,无论我做什么,svg 总是内联的。这是我的代码:
<template>
<div v-html="svg"></div>
</template>
<script>
import svg from 'raw-loader!@/assets/images/image.svg';
export default {
data () {
return {
svg
}
}
};
</script>
我知道这是由于vue-cli
webpack 的配置webpack.base.conf.js
:
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('img/[name].[hash:7].[ext]')
}
},
如果我附加?raw
到原始文件,我尝试添加一个新的加载器规则来加载它们,但这也不起作用:
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('img/[name].[hash:7].[ext]')
}
},
{
test: /\.(png|jpe?g|gif|svg)(\?raw)$/,
loader: 'raw-loader',
},
我在用着:
- vue-cli@2.9.2
- vue@2.5.2