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

在vue中寫jsx的幾種方式

 更新時間:2022年07月13日 09:53:16   作者:為這世界操碎了心  
本文主要介紹了在vue中寫jsx的幾種方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

版本

本文版本配置 vue: 2.7.2 vue-cli: ~4.5.18; 本文代碼github倉庫地址

render函數

render函數和vue中的template是互斥的,template最終是要編譯成virtual Dom的,而render函數可以更直接構建virtual Dom; virtual Dom由樹狀的vnode構成,h函數可以構建vnode

vue templates are compiled into virtual DOM render functions. vue also provides APIs that allow us to skip the template compilation step and directly author render functions

If both render and template are present in a component, render will take higher priority.

如果render和template同時出現,render會有更高的權限(vue2不太一樣,下面會說)。

這些在文檔中有更直接的說明vue3 render函數

jsx/tsx

jsx類似于h函數,都是更直接使用javascript來構建DOM,需要注意的是jsx語法需要去編譯處理,有的腳手架可能有預先配置,有的沒有。

在typescript下需要編寫tsx

使用jsx的幾種方式

使用js對象注冊component

When not using a build step, a Vue component can be >defined as a plain JavaScript object containing >Vue-specific options:

vue組件也可以直接使用普通的js對象來注冊

// 定義一個js文件,導出組件對象
// componentObject.js
export default {
  data() {
      return {
          msg: 'hello'
      }
  },
  created() {
      setTimeout(() => {
          this.msg = 'hello world'
      }, 1000);
  },
  render() {
      return <h1>{this.msg}</h1>
  }
}
<script>
import componentObject from './../components/componentObject.js'

export default {
  components: {
    jsxComponent
  }
};
</script>

使用.vue文件

這里如果template和render函數如果同時指定的話,會用template覆蓋掉render,顯然是template優(yōu)先級更高,跟文檔上的render優(yōu)先級更高不一樣

// sfcJsx.vue
<!-- <template>
  <div>test</div>
</template> -->
<script>
  export default {
    data() {
      return {
        msg: 'i am sfc jsx'
      }
    },
    created() {
        setTimeout(() => {
            this.msg = 'i am sfc jsxxxx'
        }, 1000);
    },
    render() {
        return <h1>{this.msg}</h1>
    }
  }
</script>

vue2.7在.vue文件中結合compositionApi和jsx

目前在setup中return jsx會報錯,目測是loader沒有支持(有知道解決辦法的老師傅也可以告訴我一下..),只能在setup使用compositionApi再加上render函數里寫jsx

// sfcJsx.vue
<script>
import { ref } from 'vue';
export default {
  setup() {
    const count = ref(0);
    setTimeout(() => {
      count.value = 12
    }, 1000);
    return {
      count
    }
  },
  render(h) {
    return (
      <h1>{this.count ? <span>11</span>: <span>22</span>}</h1>
    )
  }
}
</script>

到此這篇關于在vue中寫jsx的幾種方式的文章就介紹到這了,更多相關vue使用jsx 內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Vue.js中NaiveUI組件文字漸變的實現

    Vue.js中NaiveUI組件文字漸變的實現

    這篇文章主要介紹了Vue.js中NaiveUI組件文字漸變的實現,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-07-07
  • Vue程序化的事件監(jiān)聽器(實例方案詳解)

    Vue程序化的事件監(jiān)聽器(實例方案詳解)

    本文通過兩種方案給大家介紹了Vue程序化的事件監(jiān)聽器,每種方案通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2020-01-01
  • vue3+vite+ts父子組件之間的傳值

    vue3+vite+ts父子組件之間的傳值

    隨著vue2的落幕,vue3越來成熟,有必要更新一下vue3的父子組件之間的傳值方式,這里介紹下vue3+vite+ts父子組件之間的傳值方式實例詳解,感興趣的朋友一起看看吧
    2023-12-12
  • Vue 組件(component)教程之實現精美的日歷方法示例

    Vue 組件(component)教程之實現精美的日歷方法示例

    組件是我們學習vue必須會的一部分,下面這篇文章主要給大家介紹了關于Vue 組件(component)教程之實現精美的日歷的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2018-01-01
  • 分享9個Vue的巧妙冷技巧

    分享9個Vue的巧妙冷技巧

    這篇文章主要介紹了分享9個Vue的巧妙冷技巧,文章首先通過巧用$attrs和$listeners的技巧展開,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-06-06
  • Vue JS對URL網址進行編碼解碼,轉換為對象方式

    Vue JS對URL網址進行編碼解碼,轉換為對象方式

    這篇文章主要介紹了Vue JS對URL網址進行編碼解碼,轉換為對象方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Vue使用html2canvas和jspdf實現PDF文件導出

    Vue使用html2canvas和jspdf實現PDF文件導出

    這篇文章主要為大家詳細介紹了Vue如何使用html2canvas和jspdf實現PDF文件導出功能并設置頁面大小及方向,感興趣的小伙伴可以跟隨小編一起學習一下
    2025-01-01
  • vue-路由精講 二級路由和三級路由的作用

    vue-路由精講 二級路由和三級路由的作用

    這篇文章主要介紹了vue-路由精講 二級路由和三級路由的作用,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • vue如何使用rem適配

    vue如何使用rem適配

    這篇文章主要介紹了vue如何使用rem適配,幫助大家處理vue開發(fā)移動應用時的兼容性問題,感興趣的朋友可以了解下
    2021-02-02
  • 如何查看vue項目的node版本

    如何查看vue項目的node版本

    文章總結:查看Vue項目中使用的Node版本,特別是當項目使用Yarn和TypeScript時,可以通過查看yarn.lock文件中的@types/node@version來確定版本
    2025-01-01

最新評論

府谷县| 龙南县| 始兴县| 嘉荫县| 马鞍山市| 监利县| 镇坪县| 南宁市| 成都市| 双牌县| 南昌市| 榆社县| 天柱县| 大关县| 阳西县| 开封市| 隆林| 江达县| 聊城市| 上栗县| 洛川县| 邹城市| 沙雅县| 进贤县| 广南县| 东辽县| 隆回县| 和顺县| 南康市| 萨迦县| 高平市| 治县。| 策勒县| 德惠市| 南丰县| 达州市| 司法| 武穴市| 顺平县| 明水县| 九江市|