Vue 加载 svg icon - “vue-svg-loader”

前面我们介绍了通过先将 svg 模板加载到 body 中,然后再通过 use 标签去实例化 svg 的方式去加载 svg;见 Vue 加载 svg icon

这里介绍另一种方式 vue-svg-loader,用起来还是挺方便的,配置也简单,直接参考官方 readme 就可以搞定;
Vue CLI 官方关于 webpack 相关 替换一个规则里的 Loader 举的一个例子,也是用的这个loader;

首先是安装

npm i -D vue-svg-loader

然后是配置loader

配置分cli2 和 cli3

  • cli2 创建工程中 webpack 配置
module.exports = {
  module: {
    rules: [
      {
        test: /\.svg$/,
        use: [
          'vue-loader',
          'vue-svg-loader',
        ],
      },
    ],
  },
};
  • cli3
module.exports = {
  chainWebpack: (config) => {
    const svgRule = config.module.rule('svg');
    svgRule.uses.clear();

    svgRule
      .use('vue-loader')
      .loader('vue-loader') // or `vue-loader-v16` if you are using a preview support of Vue 3 in Vue CLI
      .end()
      .use('vue-svg-loader')
      .loader('vue-svg-loader');
  },
};
最后就能像使用普通Vue组件那样使用 svg icon 了


你可能感兴趣的:(Vue 加载 svg icon - “vue-svg-loader”)