npm 包 @svgr/core 使用教程

在前端开发中,SVG (Scalable Vector Graphics) 作为一种矢量图形格式,已经被广泛地应用于网站和应用中。然而,使用 SVG 图形时,由于浏览器的兼容性、大小和渲染方面的限制,我们需要使用一些工具来处理 SVG 图形。其中,@svgr/core 就是在 React 应用中将 SVG 图形转换为 React 组件的一个好工具,使得开发人员可以将 SVG 图形以 React 组件的形式在应用中使用。

安装

@svgr/core 是一个 npm 包,可以通过 npm 或 yarn 进行安装。

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

使用

命令行

@svgr/core 提供了命令行工具可以将 SVG 文件转换为 React 组件。

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

其中,--icon 表示生成的组件将包括额外的 props,--replace-attr-values=#666 表示将 SVG 图形中所有属性值为 #666 的替换为当前颜色,src/icons/svg/arrow.svg 是输入的 SVG 文件路径,--out-dir src/icons 表示输出文件夹的路径。

JS 函数

@svgr/core 也可以作为一个 JS 函数使用。通过调用 @svgr/core 模块中的 inline 方法,可以将 SVG 图形转换为 React 组件。

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

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

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

其中,调用 inline 方法时需要将 SVG 图形的字符串作为参数传入。生成的组件将返回一个 React 组件,可以像其他 React 组件一样使用。

配置

@svgr/core 可以通过配置来处理 SVG 图形。配置可以用于设置组件的属性(如大小、颜色、填充等)以及传递给插件。

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

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

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

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

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

在上面的代码中,options 是配置对象。其中,dimensions 表示是否添加 viewBox 和 width/height 属性,prettier 表示是否使用 prettier 来格式化代码,plugins 表示插件数组,用于配置插件或添加自定义插件。可以根据需要自定义配置。

示例代码

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

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

在上面的代码中,<ReactComponent>@svgr/webpack 包中挂载的特殊组件,它可以将 SVG 文件转换为 React 组件。widthheight 属性是 SVG 图形的宽度和高度,fill 属性是 SVG 图形的颜色。

结语

@svgr/core 是一个很好用的将 SVG 图形转换为 React 组件的工具。使用起来非常简单,并且可以通过配置和插件来实现更多的定制化需求。在实际开发中,可以根据需要来灵活应用。

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


猜你喜欢

  • npm 包 @adfinis-sygroup/semantic-release-config 使用教程

    简介 随着前端开发团队和项目数量的增加,版本控制和发布管理变得越来越重要。而 Semantic Versioning(语义化版本控制)规范能够解决版本号混乱和冲突的问题。

    5 年前
  • npm 包 @6river/commitlint-config-6river 使用教程

    前言 在团队协作开发中,遵循一定的代码规范是非常重要的。其中,Commit message 规范是团队协作及代码维护的基础。使用 @6river/commitlint-config-6river 包可...

    5 年前
  • npm 包 @1stg/commitlint-config 使用教程

    前言 在开发过程中,为了团队协作和代码管理的需求,我们需要对代码 commit 进行规范和约束。commitlint 就是一个很好的工具来解决这个问题。而 @1stg/commitlint-confi...

    5 年前
  • npm 包 conventional-changelog-conventionalcommits 使用教程

    前言 在前端开发过程中,随着工程化的发展,我们越来越需要一个可靠的版本控制工具,对于一个开源项目来说,一个规范的版本控制是更为必要的。而 conventional-changelog-conventi...

    5 年前
  • npm 包 @feiyuerenhai/nut 使用教程

    在前端开发中,使用 npm 包可以极大地提升开发效率和简化工作流程。本文介绍 @feiyuerenhai/nut 这个 npm 包的使用教程,帮助开发者更好地掌握此工具,提高工作效率。

    5 年前
  • npm 包 @adactive/kiosk-react-scripts 使用教程

    前言 @adactive/kiosk-react-scripts 是一款前端工程化工具,旨在简化 React 应用程序的开发和部署流程。该工具提供了默认配置和开箱即用的功能,包括 Webpack 配置...

    5 年前
  • npm 包 @ampersandhq/magepack-sdk 使用教程

    简介 @ampersandhq/magepack-sdk 是一个基于 Magepack 的 JavaScript SDK,可以在前端页面中轻松使用 Magepack 的功能。

    5 年前
  • npm 包 @elastic/babel-preset-kibana 使用教程

    如果你正在开发一个基于 Kibana 的 web 应用程序,那么你一定会对 @elastic/babel-preset-kibana 这个 npm 包感兴趣。这个包是一个 Babel 预设,它包含了许...

    5 年前
  • npm 包 @egis/build-tools 使用教程

    前言 在前端开发的过程中,构建工具的使用是非常必要的。而 @egis/build-tools 是一个非常优秀的构建工具,它能够帮助我们快速搭建一个适合自己的前端工程。

    5 年前
  • npm 包 babel-preset-es2015-mod 使用教程

    随着前端工具的不断更新,现在不少工具已经能支持 ES6 及以上的新特性,但是部分浏览器并不支持这些新特性,这时候就需要使用 Babel 这样的工具将代码转换成 ES5 语法,以便同时兼顾浏览器的兼...

    5 年前
  • npm 包 u-test 使用教程

    前言 在前端开发过程中,编写高质量的代码是非常重要的,而编写高质量代码的前提是必须有良好的测试覆盖率。测试可以保证我们的代码不会在生产环境出现错误,可以提前预防潜在的问题,同时也方便我们在开发过程中进...

    5 年前
  • npm 包 cody-cli 使用教程

    cody-cli 是一个基于 Node.js 平台的命令行工具,可以用来快速创建和管理前端项目。cody-cli 支持使用多种框架,例如 React 和 Vue 等。

    5 年前
  • `npm` 包 @dlghq/babel-preset-dialog 使用教程

    前言 在开发前端项目时,我们可能需要对现代JavaScript语法进行转换,以让我们的代码在不同的环境中得到更好的兼容性。在这种情况下,我们通常会选择使用 Babel 作为我们的转换工具。

    5 年前
  • npm 包 @dinoboff/babel-preset-stage-4 使用教程

    前言 在现代化的 Web 开发中,前端应用经常涉及到最新的 ECMAScript 标准。为了能够编写符合当前标准的 JavaScript 代码,并让它在现代化的浏览器中运行,我们需要使用 Babel ...

    5 年前
  • npm 包 @ava/babel-preset-stage-4 使用教程

    @ava/babel-preset-stage-4 是一个用来构建前端项目的 JavaScript 编译器,可以把 ES6/7/8/9 代码转换成 ES5 代码。这个 npm 包包含了 babel-p...

    5 年前
  • npm 包 @babel/plugin-transform-exponentiation-operator 使用教程

    简介 @babel/plugin-transform-exponentiation-operator 是一个 Babel 转换插件,用于将 ES2016 中的幂运算符(**)转换成 ES5 中的 Ma...

    5 年前
  • npm 包 react-scrollbars-custom 使用教程

    随着 Web 应用程序越来越复杂,滚动条已成为用户界面设计的必要组成部分。然而,浏览器提供的默认滚动条往往较难修改和自定义,不能满足开发者的需求。而 npm 包 react-scrollbars-cu...

    5 年前
  • npm 包 @babel/plugin-transform-property-literals 使用教程

    在现代 web 开发中,前端工程师们经常需要使用到各种不同的工具和框架来提高开发效率和代码质量。其中,Babel 是一个非常流行的工具,它可以将最新的 JavaScript 语法转换为大多数浏览器都支...

    5 年前
  • npm 包 @babel/plugin-transform-member-expression-literals 使用教程

    在前端开发中,我们经常会使用 JavaScript 语言。然而,在开发过程中,我们会遇到一些问题,例如代码的可读性不高,浏览器兼容性问题等等。解决这些问题的方法之一是使用 Babel 转码器。

    5 年前
  • npm 包 @babel/plugin-proposal-nullish-coalescing-operator 使用教程

    介绍 在 JavaScript 中,当我们想要给一个变量赋一个默认值,或者想要在变量为空或者为 null 或 undefined 的时候给它赋一个默认值,通常我们会使用三元运算符或者逻辑或运算符。

    5 年前

相关推荐

    暂无文章