npm 包 @harryhope/svgrim 使用教程

在前端开发中,使用 SVG 图像是非常常见的。随着项目越来越复杂,如何优雅地管理 SVG 文件就显得尤为重要。这时,@harryhope/svgrim 就可以派上用场了。

安装

首先,我们需要在本地安装 @harryhope/svgrim:

--- ------- -----------------

使用

在安装完成后,我们可以使用 svgrim 来管理 SVG 文件了。

初始化 svgrim 配置

我们首先需要创建一个配置文件来指定 svgrim 如何进行工作。

在项目根目录中创建一个名为 svgrim.config.js 的文件,然后像下面这样填写内容:

-------------- - -
  ----------- ------------------- -- --- ----------
  ------------- ----------------------- -- ----------
  ----------------- ---------------------------- -- ------
--

其中,iconFolder 指定了存放 SVG 图标的目录,outputFolder 指定了转换后的组件输出目录,iconSkeletonPath 指定了组件的模板文件路径。

转换 SVG 图标为组件

在配置完成后,我们就可以准备将 SVG 图标转换成可用的组件了。在命令行中执行下面的命令:

------ --------

然后 svgrim 就会扫描目录下所有的 SVG 文件,并将其转换成组件。

转换后的组件可以在 outputFolder 下找到,名称为 SVG 文件名加上 ".svelte" 后缀。例如 logo.svg 将转换成 logo.svelte。

拓展 svgrim 转换功能

因为 svgrim 的机制使得其非常灵活,所以你可以使用它拓展更多的 SVG 转换功能。

添加预处理器

在构建 SVG 组件时,我们可以使用预处理器来改变组件的样式。svgrim 支持使用 Sass 和 Less 这两种预处理器。在配置中添加以下内容即可让 svgrim 使用 Sass 预处理器:

-------------- - -
  -- ------------
  ------------- ------- -- -- ---- ----
--

自定义组件模板

默认情况下 svgrim 会根据 iconSkeletonPath 路径下的模板文件生产模板组件。不同的模板文件可以针对不同的组件逻辑,以此实现更加灵活的组件定制。我们可以像下面这样定义一个自定义的组件模板:

---- --------------------------------- ---
--------
  ------ --- ----- - -------
  ------ --- ---- - ------
---------

---- ------------ ------------- ---------- - -- --- ----------- -----------------------------------
  ----- ------ ------- - - ----- - ---- ------ ----- -- -- --------- -- -- ------ -- ----- ----- ------ - -- -------- -------------- -------------- ------ ------- ----- ------- ----------------- ------ ------- ------ ------- ------------ ------------- ------ ------ ------ ------ ------------- ------ ------ ------ ----- ------------- --------------- ------- ------- ------- ------- ---------------------- ------ ------- ------ ------- ------------ ------------- ----- ------ ------ ------ ------------- ------ ------ ------ ------ ------------- ------ ------ ------ ------ ------------- ------ ------ ------ ------ ------------- ------ ------ ------ ------ ------------- ------ ------ ------ ------ -------------- -------------- ------ ------- ------ ------- -------------- ------ ------- ------ ------- -------------- ------ ------- ------ ------ ------------- ------------- ------ ------ ------ ------ ------------- --------------- ------- ------- ------- ------- --------------- ------- ------- ------- ------- --------------- ------- ------- ------- ------- -------------- ------------- ------ ------ ------ ------ ------------- ----- ------ ------ ------ ------------- ------ ------ ------ ------ ------------- ------ ------ ------ ------ -------------- ------------- ------ ------- ------ ------- ------------- ------ ------- ------ ------- -------------- ------ ------- ------ ------- ------------- ------------- ------ ------ ------ ------ ------------- -------------- ------- ------ ------- ------ -------------- ------- ------ ------- ------ -------------- ------------- ------ ------ ------ ------ ------------- ------ ------ ------ ------ ------------- ------ ------ ------ ------ ----------- ------------- ------ ------ ------ ------ ------------- ------------- ------ ------ ------ ----- -------- --------------
------

然后在配置中将 iconSkeletonPath 指向这个新的模板文件即可:

-------------- - -
  -- ------------
  ----------------- ------------------------------------ -- -------
--

使用转换后的组件

转换完成后,我们可以在组件中使用这些 SVG 图标了。在 svelte 中,我们可以像下面这样使用 SVG 图标组件:

--------
  ------ ---- ---- -----------------------------
---------

----- --

在 react 中,我们可以像下面这样使用 SVG 图标组件:

------ ----- ---- --------
------ ---- ---- ----------------------

-------- ----- -
  ------ ----- ---
-

总结

@harryhope/svgrim 是管理 SVG 图标并将其转换为可复用组件的工具库。通过本文的介绍,我们了解了 svgrim 的基本使用方法、配置文件的作用、组件模板的定制方法,以及如何使用转换后的 SVG 图标组件。这些知识可以帮助我们更加高效地管理前端项目中的 SVG 图标,同时也可以提升我们在项目开发中的开发效率,使开发更快、更准确。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/146860


猜你喜欢

  • npm 包 @beisen-cmps/italent-feed-2 使用教程

    前言 npm 是 Node.js 的包管理工具,为前端开发提供了方便的依赖管理方式。而在 npm 仓库中,有很多优秀的第三方库,能够为前端开发者提供更强大的支持。而 @beisen-cmps/ital...

    5 年前
  • npm 包 @beisen/m-self-employment 使用教程

    前端开发中,我们经常要进行自雇业务的开发,而这时候若可以使用成熟的 npm 包将会大大提高我们的工作效率。其中一个比较优秀的自雇业务解决方案是 @beisen/m-self-employment。

    5 年前
  • npm 包 @beisen-phoenix/file-list-pgb 使用教程

    简介 @beisen-phoenix/file-list-pgb 是一款基于 Vue.js 的文件列表组件。它提供了文件上传、文件下载、文件删除等常见文件操作功能,在企业内部网盘、云盘等场景中有着广泛...

    5 年前
  • npm 包 @reacted/upload-intf 使用教程

    简介 @reacted/upload-intf 是一个 React Hooks 组件,它提供了文件上传的功能,并且兼容不同的上传方式,例如 form 上传以及 xhr 上传。

    5 年前
  • npm 包 @beisen-phoenix/date-time-range-picker 使用教程

    @(前端技术)[npm | date-time-range-picker] 随着前端技术的快速发展,时间选择组件成为了前端开发中的重要一环。在这个领域中,npm 包 @beisen-phoenix/d...

    5 年前
  • npm 包 @beisen-phoenix/time-picker 使用教程

    前言 在 Web 前端开发项目中,时间选择器是一个必不可少的组件。其中,@beisen-phoenix/time-picker 是一款非常好用的 npm 时间选择器包,可以帮助开发者轻松快速地添加时间...

    5 年前
  • npm 包 @beisen-phoenix/rc-calendar 使用教程

    前言 日历作为前端开发中常用的组件之一,可以帮助开发者在页面上快速生成日期选择器。但是在实际的开发过程中,我们需要使用成熟的开源组件来提升开发效率。其中一个很好用的组件就是@beisen-phoeni...

    5 年前
  • npm 包 @beisen-phoenix/table-v2 使用教程

    简介 在前端开发中,我们很少自己从头开始编写一个表格组件,而是选择使用现有的组件库。 @beisen-phoenix/table-v2 就是一个非常实用的表格组件,它基于 Vue.js 编写,提供了丰...

    5 年前
  • npm 包 @beisen-phoenix/table 使用教程

    在前端开发中,常常需要用到表格来展示数据。@beisen-phoenix/table 帮助我们快速简单地创建表格组件,能够帮助我们减少开发成本,提高开发效率,从而让我们更集中精力在业务上。

    5 年前
  • npm 包 @beisen-phoenix/steps-pgb 使用教程

    简介 @beisen-phoenix/steps-pgb 是适用于前端开发的一个 npm 包,可以帮助开发者简化移动端应用的构建流程。使用这个包,可以快速生成移动应用并将其上传到 PhoneGap B...

    5 年前
  • npm 包 @beisen-phoenix/react-table 使用教程

    前言 在前端开发中,数据展示是非常重要的一部分。而表格作为一种常见的数据展示形式,也是我们经常接触的。因此,我们需要一个能够快速、灵活地创建表格的工具,这时候,@beisen-phoenix/reac...

    5 年前
  • npm包@beisen-cmps/isv-common-head使用教程

    在Web前端开发中,尤其是在企业级应用中,设置页面的标题、导航栏等公用的组件是很重要的。针对这个需求,贝岭集团开发了一个NPM包 @beisen-cmps/isv-common-head,它提供了页面...

    5 年前
  • npm 包 ux-work-report 使用教程

    在现代化的 Web 应用开发中,前端开发工程师的工作非常重要。为了更好地展示前端开发的工作内容,我们提供了 npm 包 ux-work-report,它能够帮助开发人员更加高效地记录和展示工作内容,并...

    5 年前
  • npm 包 @beisen-phoenix/img-preview-pgb 使用教程

    前言 作为前端开发者,我们经常需要使用图片进行页面的布局和美化。有时候,我们需要在页面中展示一些图片,但是这些图片非常大,需要等待很长时间才能完全加载出来。这时,我们就需要使用图片预览组件。

    5 年前
  • npm 包 @beisen-phoenix/field-upload 使用教程

    简介 @beisen-phoenix/field-upload 是一款开源的前端上传组件,适用于上传文件的场景并且支持 IE 11 及以上版本浏览器。其具有以下特点: 轻量级:压缩后仅 6KB 左右...

    5 年前
  • npm 包 @beisen-phoenix/textarea 使用教程

    在前端开发过程中,文本域是一个经常使用的控件。而有时候,我们需要一些特定的功能或在表单中某些文本域中加一些样式,这时候,npm 包 @beisen-phoenix/textarea 可能是个不錯的选择...

    5 年前
  • npm 包 @beisen-phoenix/single-select-list 使用教程

    简介 @beisen-phoenix/single-select-list 是一个用于前端开发的 npm 包。它提供了一种方便的方法来创建单选列表,并提供了丰富的配置选项,使得开发者能够自定义列表的展...

    5 年前
  • npm 包 @beisen-cmps/italent-feed-11 使用教程

    背景 在前端开发中,我们经常需要使用各种工具、库或者框架来提高我们开发效率或实现某一个功能。而 npm 是我们前端开发中必须掌握的一个工具之一,因为它可以帮助我们方便的安装、管理、发布前端开发中的各种...

    5 年前
  • npm 包 @beisen-cmps/italent-feed-10 使用教程

    介绍 @beisen-cmps/italent-feed-10 是一款基于 Vue.js 框架和 Element UI 组件的企业级前端组件库,旨在解决人才招聘业务中的常见 UI 问题。

    5 年前
  • npm 包 @beisen-cmps/italent-feed-9 使用教程

    简介 @beisen-cmps/italent-feed-9 是一款兼容 ITalent Feed V9 的前端组件库,提供了多种数据展示和业务处理功能。本文将介绍它的使用方法,包括安装、引入和使用示...

    5 年前

相关推荐

    暂无文章