最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

react?+?vite?+?ts項目中優(yōu)雅使用.svg文件

 更新時間:2023年08月25日 11:00:12   作者:DiracKeeko  
這篇文章主要為大家介紹了react?+?vite?+?ts項目中優(yōu)雅使用.svg文件,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

在react + vite + ts項目中svg文件的基本使用

1、直接在JSX組件中引入SVG文件

使用img標簽,img標簽的src代碼嵌入到JSX組件中,例如:

// XXcomponent.tsx

import help_icon from '@/icon/help_icon.svg';
function MySVGComponent() {
return (
      <img src={help_icon} alt="" />
  );
}
export default MySVGComponent;

1這種使用方法有很多重復的代碼,而且不好維護,我們希望至少能夠重復使用引用一次的svg文件,將svg資源封裝成組件,方法見2。

2、安裝vite-plugin-svgr插件

修改配置,將SVG文件作為React組件導入

2.1 安裝vite-plugin-svgr

npm i vite-plugin-svgr -D

2.2 在vite配置文件中注冊已安裝的vite-plugin-svgr插件

// vite.config.ts

import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
import svgr from "vite-plugin-svgr";
export default defineConfig({
    plugins: [react(), svgr()]
});

2.3 配置ts.config.json

// ts.config.json 添加"types": ["vite-plugin-svgr/client"] 這項配置

{
  "compilerOptions": {
      "types": ["vite-plugin-svgr/client"]
  }
}

2.4 使用

// XXcomponent.tsx

import { ReactComponent as HelpIcon } from '@/icon/help_icon.svg';
function MySVGComponent() {
  return (
      <HelpIcon />
  );
}
export default MySVGComponent;

3、節(jié)省引入"path/to/icon_xx.svg"

在2的基礎(chǔ)上進行封裝,節(jié)省引入"path/to/icon_xx.svg"的步驟。

思路是將所有的icon_xx.svg放在src/icon 目錄下
封裝一個<SvgIcon /> 組件 <SvgIcon />的Props中iconName對應icon_xx.svg的名稱。

import(@/icon/${iconName}.svg)

在需要使用svg的地方引入<SvgIcon />組件。

這種思路有點類似于vue2中的svg-sprite-loader,只是沒有注冊在全局。

以上就是react + vite + ts項目中優(yōu)雅使用.svg文件的詳細內(nèi)容,更多關(guān)于react vite ts使用.svg的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • React組件三大屬性之state,props,refs

    React組件三大屬性之state,props,refs

    這篇文章主要介紹了React組件三大屬性之state,props,refs,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-07-07
  • 詳解React中合并單元格的正確寫法

    詳解React中合并單元格的正確寫法

    用表格進行頁面布局,頁面布局在各種瀏覽器的的兼容性, 本文主要介紹了詳解React中合并單元格的正確寫法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • react中hooks使用useState的更新不觸發(fā)dom更新問題及解決

    react中hooks使用useState的更新不觸發(fā)dom更新問題及解決

    這篇文章主要介紹了react中hooks使用useState的更新不觸發(fā)dom更新問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 深入理解React 三大核心屬性

    深入理解React 三大核心屬性

    本文主要介紹了React 三大核心屬性,主要包括State屬性,Props屬性,Refs屬性,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • react源碼層分析協(xié)調(diào)與調(diào)度

    react源碼層分析協(xié)調(diào)與調(diào)度

    本文主要介紹了深入理解React協(xié)調(diào)與調(diào)度(Scheduler)原理,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧
    2022-10-10
  • 詳解react關(guān)于事件綁定this的四種方式

    詳解react關(guān)于事件綁定this的四種方式

    這篇文章主要介紹了詳解react關(guān)于事件綁定this的四種方式,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • React Router v4 入坑指南(小結(jié))

    React Router v4 入坑指南(小結(jié))

    這篇文章主要介紹了React Router v4 入坑指南(小結(jié)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • React中多語言的配置方式

    React中多語言的配置方式

    這篇文章主要介紹了React中多語言的配置方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 詳解React中的不可變值

    詳解React中的不可變值

    這篇文章主要介紹了React中的不可變值的相關(guān)資料,幫助大家更好的理解和學習使用react.js,感興趣的朋友可以了解下
    2021-04-04
  • 詳解使用WebPack搭建React開發(fā)環(huán)境

    詳解使用WebPack搭建React開發(fā)環(huán)境

    這篇文章主要介紹了詳解使用WebPack搭建React開發(fā)環(huán)境,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08

最新評論

石家庄市| 东城区| 陆河县| 读书| 清丰县| 安徽省| 调兵山市| 永顺县| 宁波市| 嵊泗县| 乌什县| 班戈县| 江西省| 尚志市| 静宁县| 闸北区| 宁乡县| 右玉县| 潜江市| 哈巴河县| 巧家县| 景东| 临桂县| 普定县| 杭锦后旗| 莒南县| 淮滨县| 积石山| 南皮县| 青阳县| 桂东县| 天台县| 大城县| 元阳县| 眉山市| 南丹县| 阳春市| 开鲁县| 道孚县| 武宁县| 迁安市|