首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

svg-inline-loader

这个 Webpack 加载器将 SVG 作为模块。如果您使用 Adobe 套件或 Sketch 来导出 SVG,您将获得自动生成的不需要的外壳。这个加载器也会为你删除它。

安装

代码语言:javascript
复制
npm install svg-inline-loader --save-dev

配置

只需加载配置对象到 module.loaders 像下面这样。

代码语言:javascript
复制
    {
        test: /\.svg$/,
        loader: 'svg-inline-loader'
    }

警告: 这个loader你应只配置一次,通过 module.loaders 或者 require('!...') 配置。 更多细节参考 #15

查询选项

删除指定的标签和它的子元素,你可以指定标签通过设置 removingTags 查询多个。

默认: removeTags: false

removingTags: [...string]

警告: 你指定 removeTags: true 时,它才会执行。

default: removingTags: ['title', 'desc', 'defs', 'style']

warnTags: [...string]

警告标签,例如:'desc','defs','style'

default: warnTags: []

removeSVGTagAttrs: boolean

从中删除widthheight属性<svg />

默认: removeSVGTagAttrs: true

removingTagAttrs: [...string]

从中删除属性<svg />

默认: removingTagAttrs: []

warnTagAttrs: [...string]

在console发出关于内部 <svg /> 属性的警告

默认: warnTagAttrs: []

classPrefix: boolean || string

添加一个前缀到svg文件的class,以避免碰撞。

默认: classPrefix: false

idPrefix: boolean || string

添加一个前缀到svg文件的id,以避免碰撞。

默认: idPrefix: false

使用示例

代码语言:javascript
复制
// Using default hashed prefix (__[hash:base64:7]__)
var logoTwo = require('svg-inline-loader?classPrefix!./logo_two.svg');

// Using custom string
var logoOne = require('svg-inline-loader?classPrefix=my-prefix-!./logo_one.svg');

// Using custom string and hash
var logoThree = require('svg-inline-loader?classPrefix=__prefix-[sha512:hash:hex:5]__!./logo_three.svg');

有关散列选项,请参阅loader-utils

通过 module.loaders 优先使用:

代码语言:javascript
复制
    {
        test: /\.svg$/,
        loader: 'svg-inline-loader?classPrefix'
    }

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com