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

Vue3中使用jsx/tsx的教程詳解

 更新時間:2024年02月13日 09:04:27   作者:吳楷鵬  
這篇文章主要為大家詳細(xì)介紹了如何在Vue3中使用jsx/tsx的相關(guān)知識,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,需要的小伙伴可以了解下

首先,恭喜一下 React,再過 4 個月,就達(dá)成了兩年無更新記錄

反觀隔壁的 Vue,穩(wěn)定迭代更新

之前寫 React 的時候,最喜歡的是 JSX/TSX 語法,把 HTML 組件當(dāng)做 JavaScript/TypeScript 代碼片段處理

const App: React.FC<AppProps> = ({ title }) => {
  const [count, setCount] = useState<number>(0);
  // ??????
  return (
    <div>
      <h1>{title}</h1>
      <p>You clicked {count} times</p>
      <button onClick={() => setCount(count + 1)}>
        Click me
      </button>
    </div>
  );
}

轉(zhuǎn)戰(zhàn) Vue 之后,最痛苦的是沒辦法利用 TSX 語法靈活創(chuàng)建組件。

最常見的例子是,當(dāng)我有一個數(shù)據(jù)表格,需要自定義字段的組件時,得用 h() 函數(shù)來創(chuàng)建:

<script lang="ts" setup>
//...
const createColumns = () => {
  return [
    {
      title: 'Action',
      key: 'actions',
      render (row) {
        /* ?????? */
        return h(
          NButton,
          {
            strong: true,
            tertiary: true,
            size: 'small',
            onClick: () => play(row)
          },
          { default: () => 'Play' }
        )
      }
    }
  ]
}
//...
</script>

h() 麻煩,低頻使用情況下,每次都得查一遍文檔。

最近發(fā)現(xiàn) Vue3 原來是支持 JSX & TSX 的!

官方文檔: vuejs.org/guide/extras/render-function.html#jsx-tsx

在 Vue3 中集成 JSX & TSX 相對簡單,安裝插件:

npm install @vue/babel-plugin-jsx -D

將 babel 文件中配置:

{
  "plugins": ["@vue/babel-plugin-jsx"]
}

如果項(xiàng)目用 TypeScript,則在 tsconfig.json 中配置:

{
  "compilerOptions": {
    "jsx": "preserve"
  }
}

注意:這里以 babel 舉例,如果是其他工具鏈,比如 Vite、Nuxt 的話,請參考對應(yīng)文檔。

集成之后,上述的 h() 終于可以扔掉,換回熟悉的 JSX & TSX:

<script lang="ts" setup>
//...
const createColumns = () => {
  return [
    {
      title: 'Action',
      key: 'actions',
      render (row) {
        /* ?????? */
        return (
          <NButton 
            strong={true}
            tertiary={true}
            size="small"
            onClick={() => play(row)}>
            Play
          </NButton>
        )
      }
    }
  ]
}
//...
</script>

Vue3,你是懂框架的,妥妥的真香。

Vue 的誕生,已經(jīng)十個年頭,這么些年來,Vue 始終穩(wěn)步前進(jìn)。

降低開發(fā)成本和心智負(fù)擔(dān)方面來說,Vue 算得上優(yōu)秀。

先后推出的 Composition API、Setup、支持 TSX 語法等,真正的理解、賦能開發(fā)者。

值得一提的是,國內(nèi)的開發(fā)者確實(shí)偏愛 Vue,不論是 Star 人數(shù)、Issue 數(shù)量 和 Pull Request 數(shù)量,都是遙遙領(lǐng)先:

數(shù)據(jù)來源:ossinsight.io/analyze/vuejs/core#people

到此這篇關(guān)于Vue3中使用jsx/tsx的教程詳解的文章就介紹到這了,更多相關(guān)Vue3使用jsx/tsx內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue實(shí)現(xiàn)右上角時間顯示實(shí)時刷新

    vue實(shí)現(xiàn)右上角時間顯示實(shí)時刷新

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)右上角時間顯示實(shí)時刷新,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • 基于Vue3+Node.js實(shí)現(xiàn)實(shí)時可視化監(jiān)控系統(tǒng)

    基于Vue3+Node.js實(shí)現(xiàn)實(shí)時可視化監(jiān)控系統(tǒng)

    在日常運(yùn)維和開發(fā)工作中,服務(wù)器監(jiān)控是必不可少的環(huán)節(jié),市面上有不少優(yōu)秀的監(jiān)控方案,但對于中小型團(tuán)隊(duì)或個人開發(fā)者來說,這些工具往往過于復(fù)雜,學(xué)習(xí)成本較高,本文將介紹我自己開發(fā)的 ServWatch 監(jiān)控系統(tǒng)——一個輕量級、易部署、界面美觀的實(shí)時監(jiān)控解決方案
    2026-02-02
  • Vue如何將時間戳轉(zhuǎn)換日期格式

    Vue如何將時間戳轉(zhuǎn)換日期格式

    這篇文章主要介紹了Vue如何將時間戳轉(zhuǎn)換日期格式,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-09-09
  • Vue中關(guān)于computed計(jì)算屬性的妙用

    Vue中關(guān)于computed計(jì)算屬性的妙用

    這篇文章主要介紹了Vue中關(guān)于computed計(jì)算屬性的妙用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • Vue項(xiàng)目前端部署詳細(xì)步驟(nginx方式)

    Vue項(xiàng)目前端部署詳細(xì)步驟(nginx方式)

    Nginx(engine x)是一個高性能的HTTP和反向代理web服務(wù)器,是部署前端項(xiàng)目的首選,這篇文章主要給大家介紹了關(guān)于Vue項(xiàng)目前端部署(nginx方式)的相關(guān)資料,需要的朋友可以參考下
    2023-09-09
  • Vue3 使用axios攔截器打印前端日志

    Vue3 使用axios攔截器打印前端日志

    這篇文章主要介紹了Vue3 使用axios攔截器打印前端日志,這是一種比較值得推薦的方式,也就是寫一次,就不用總寫console.log了。下面來看看文章的詳細(xì)內(nèi)容,需要的朋友可以參考一下
    2021-11-11
  • 基于Vue實(shí)現(xiàn)后臺系統(tǒng)權(quán)限控制的示例代碼

    基于Vue實(shí)現(xiàn)后臺系統(tǒng)權(quán)限控制的示例代碼

    本篇文章主要介紹了基于Vue實(shí)現(xiàn)后臺系統(tǒng)權(quán)限控制的示例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • vue通過url方式展示PDF的幾種方法

    vue通過url方式展示PDF的幾種方法

    小編最近接手的項(xiàng)目中有個需求,前端顯示后端返回的PDF格式的文件,下面這篇文章主要給大家介紹了關(guān)于vue通過url方式展示PDF的幾種方法,需要的朋友可以參考下
    2023-01-01
  • Vue項(xiàng)目的網(wǎng)絡(luò)請求代理到封裝步驟詳解

    Vue項(xiàng)目的網(wǎng)絡(luò)請求代理到封裝步驟詳解

    這篇文章主要介紹了Vue項(xiàng)目的網(wǎng)絡(luò)請求代理到封裝步驟,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-04-04
  • 詳解vue-cli腳手架build目錄中的dev-server.js配置文件

    詳解vue-cli腳手架build目錄中的dev-server.js配置文件

    這篇文章主要介紹了詳解vue-cli腳手架build目錄中的dev-server.js配置文件,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11

最新評論

广元市| 福州市| 高雄县| 门源| 策勒县| 扶沟县| 木里| 永春县| 泸州市| 科尔| 威海市| 山阴县| 建始县| 聂荣县| 建阳市| 惠州市| 娱乐| 大田县| 安塞县| 确山县| 康马县| 会理县| 延边| 乌兰浩特市| 竹溪县| 贵溪市| 公安县| 山东省| 镇远县| 伊金霍洛旗| 葫芦岛市| 宜春市| 鄂伦春自治旗| 双江| 吐鲁番市| 新和县| 永寿县| 都江堰市| 博白县| 普兰县| 永州市|