亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

jsx語法如何在Vue 3.0中使用

發布時間:2020-11-16 14:56:38 來源:億速云 閱讀:328 作者:Leah 欄目:開發技術

本篇文章為大家展示了jsx語法如何在Vue 3.0中使用,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

Vue 3.0 正式發布了,喜大普奔😁。新的語法又要學習一陣陣,不過需要在生產環境下大面積使用,可能需要等到它的周邊工具:vuex,vue-router 等等全部升級完畢。

Vue 3.0 中尤大使用的了新的編譯工具 vite,革了 webpack 的命😂。嘗試看了下文檔,發現支持 jsx 語法,由于這段時間都是在使用 react 來開發項目,jsx 完全不同的體驗,更加的純粹與靈活。

項目創建

npm init vite-app vite-vue
cd vite-vue
npm install
npm run dev

我們發現創建的目錄解構很簡單

jsx語法如何在Vue 3.0中使用

使用 JSX

Vue 3.0 直接支持 jsx 語法,新建 demo.jsx

export default function JsxTemp() {
 return <div>
 <h4>jsx</h4>
 </div>
}

引入到 App.vue 中可以完整顯示

jsx語法如何在Vue 3.0中使用

再嘗試綁定數據

import { ref } from 'vue'

export default function JsxTemp() {
 const state = ref(0)
 const onClick = () => {
 state.value++;
 console.log(state.value)
 }
 return <div>
 <h4>state: {state.value}</h4>
 <button onClick={onClick}>點擊</button>
 </div>
}

我們發現沒有像我們想的那樣 state 數一直自增&#128517;

jsx語法如何在Vue 3.0中使用

這是因為我們在 Vue 3.0 中需要使用 defineComponent 包裹來使其變成一個雙向綁定數據的組件
參數 為 setup function | object

import { defineComponent, ref } from 'vue'

export default defineComponent(() => {
 const state = ref(0)
 const onClick = () => {
 state.value++;
 console.log(state.value)
 }
 return () => (
 <div>
  <h4>state: {state.value}</h4>
  <button onClick={onClick}>點擊</button>
 </div>
 )
})

可以看到現在是實時點擊實現自增效果

jsx語法如何在Vue 3.0中使用

組件通信

組件間傳值通信該怎么來實現呢&#128558;

我們需要改用對象的方式來傳入通信數據

App.vue
<JsxTemp site="imondo.cn" @onGet="onGet" />
export default {
 ...
 methods: {
 onGet(e) {
  console.log('emit:', e)
 }
 }
}
...
export default defineComponent({
 props: {
 site: String
 },
 setup({ site }) {
 const state = ref(0)
 const onClick = () => {
  state.value++;
  console.log(state.value)
  context.emit('onGet', 'Mondo');
 }
 return () => (
  <div>
  <h2>props: {site}</h2>
  <h4>state: {state.value}</h4>
  <button onClick={onClick}>點擊</button>
  </div>
 )
 }
})

實現效果

jsx語法如何在Vue 3.0中使用

總結

我們嘗試了在 Vue 3.0 中如何使用 jsx ,這有助于我們在項目中更靈活的公用我們組件,由此也可以區分我們在項目中使用的方式

  • 無狀態組件 我們完全可以使用純函數來展示
  • 有狀態組件 存在邏輯與數據綁定的組件則需要使用 Vue 3.0 提供的一系列組件 API

上述內容就是jsx語法如何在Vue 3.0中使用,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

杭锦后旗| 河东区| 文水县| 海宁市| 五大连池市| 东丰县| 新泰市| 阆中市| 巴青县| 济南市| 莱芜市| 忻州市| 任丘市| 黎平县| 铜山县| 华池县| 金门县| 乐东| 湖口县| 沧源| 兰考县| 长武县| 万全县| 平潭县| 河源市| 宁强县| 元谋县| 乌拉特后旗| 新宁县| 贵阳市| 江口县| 西畴县| 冕宁县| 遂溪县| 和林格尔县| 南靖县| 南宫市| 巴楚县| 确山县| 隆林| 自治县|