vue中使用svg注意点

网上介绍在vue中如何使用svg的教程已经很多了,我这不多做赘述。

场景

已经根据网上的教程,将svg组件引入到页面中去了,但是F12发现,svg文件并没有并真正引入进去,<use></use>中间是空的。
这个问题困扰了我好几天,一直找不到原因。

解决

  • 对于用来svg组件的icon文件夹,url-loader设置不对其进行转换,注意exclude将这个文件夹排除在外。
  • 使用svg-sprite-loader对该icons文件夹进行处理。
      {
        test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
        loader: 'url-loader',
        exclude: [resolve('src/icons')],  // 注意把使用svg组件的文件去除掉
        options: {
          limit: 10000,
          name: utils.assetsPath('img/[name].[hash:7].[ext]')
        }
      },
      {
        test: /\.svg$/,
        loader: 'svg-sprite-loader',
        include: [resolve('src/icons')],  // 指定转换路径
        options: {
          symbolId: 'icon-[name]'
        }
      }
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容