精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Vue 2和Vue 3中應該知道的屬性創建差異

開發 前端
我將向你展示如何使用Options API在Vue 2中創建屬性,然后向你展示如何使用Composition API在Vue 3中創建屬性。

我將向你展示如何使用Options API在Vue 2中創建屬性,然后向你展示如何使用Composition API在Vue 3中創建屬性。

然后,你將學習如何使用包裝對象ref和reactive創建屬性,何時使用它們以及為什么。

到本文結尾,你將能夠了解Vue 2 Options API與Vue 3 Composition API之間的屬性創建差異。

使用Vue2 Option API

Vue 2中引入的在Options API中聲明屬性的方法之一是將其添加到 data() 函數返回的JavaScript對象中。

如你所見,我已經創建了一個 name 屬性,并將其初始值設置為 null。

  1. export default { 
  2.   data() { 
  3.     return { 
  4.       name: null 
  5.     } 
  6.   } 

當我們使用Options API創建屬性時,默認情況下它將變為響應性(或者稱為反應性)的。

響應性?

  • name屬性是響應性的,意味著可以將其綁定到模板中的HTML元素。
  • 每當屬性值更改時,視圖都會更新,反之亦然,這也稱為雙向數據綁定。

我們在Options API中聲明的所有屬性都是響應性的,這在大多數情況下都是很好的。

在JavaScript Vue 2中訪問該屬性

要訪問此組件中的導出默認對象內的任何位置的 name 屬性,我們可以在選項API中使用this關鍵字。

假設我想在 mount() 函數內部訪問它,該函數是Options API中的生命周期方法之一。

  1. export default { 
  2.   ... 
  3.   mounted() { 
  4.     console.log(this.name); 
  5.   } 

讓我們看看如何在Vue模板中訪問 name 屬性。

訪問Vue 2模板中的屬性

每當我們使用Options API創建屬性時,它們不僅具有響應性,而且可立即用于Vue模板。

因此,我們可以簡單地使用雙花括號來訪問模板標簽之間的 name 屬性。

  1. <template> 
  2.   <div> 
  3.     {{name}} 
  4.   </div> 
  5. </template> 

在Vue 2中,模板標記中需要有一個父元素,所有其他元素都將進入其中。

你可能已經知道此過程,但讓我們看看如何使用新的Composition API來完成此過程。

Composition API (Vue 3)

Vue 3的一大優點是,我們可以像上面的示例一樣使用Options API來創建響應性屬性。

此外,我們現在可以使用Composition API來創建非常靈活的屬性,一會兒你就能明白為什么。

在Vue 3中有兩種創建反應特性的方法:

  • ref
  • reactive

ref()

在Vue 3中,我們需要導入任何我們想要在應用程序中使用的包。

通過這種方式,我們只包含我們在生產包中使用的包,這使應用程序更輕和更快。

  1. <script> 
  2.   import { ref } from "vue"; 
  3.   export default { 
  4.     setup() { 
  5.       // 你所有的變量和函數都將放在此處 
  6.     } 
  7.   }  
  8. </script> 

 

有了Composition API,所有的屬性和函數都會進入 export default 的 setup() 方法里面。

  1. <script> 
  2.   import { ref } from "vue"; 
  3.   export default { 
  4.     setup() { 
  5.       let name = ref(""); 
  6.     } 
  7.   }  
  8. </script> 

 

在這里,我們可以使用 let 或 const 或 var(不推薦)關鍵字將屬性創建為變量。

在右側,name 變量的值是一個空字符串,其中包裹了ref對象。

那么什么是 ref() 對象?‍♂️

ref是一個包裝器對象,它具有一個內部值并返回一個反應性和可變的對象。

我們可以將其分配給括號內具有初始值的變量…在這種情況下,是一對雙引號。

那么為什么我們需要它呢?

當 name 變量的值發生變化時,它通過發出反應性事件來保持反應性,這樣觀察者可以自動更新。

它接受一個內部value,并返回一個反應式和可變的對象。

現在,name變量是一種ref對象,其內部包裹著一個value。

在JavaScript中訪問Ref()變量

要獲得與 name 變量關聯的值,我們只需要使用它的 .value 屬性對其進行拆包,然后將給出該值。

ref() 對象將有一個名為 .value 的單一屬性,指向內部值。

  1. <script> 
  2.   import { ref } from "vue"; 
  3.   export default { 
  4.     setup() { 
  5.       let name = ref("Raja"); 
  6.       name.value = Raja Tamil; // Set 
  7.       console.log(name.value) // Get 
  8.     } 
  9.   }  
  10. </script> 

 

是的,當你要為 name 變量設置值時,我們也需要使用 .value。

正如你所知道的,在Vue 2的Option API中,所有的屬性在模板中一經創建就變得可用。

但是在Vue 3與Composition API中,我們有一個選項可以顯式地將屬性和功能暴露給模板。

這意味著我們現在可以創建一個私有變量,該變量只能在 setup() 函數內部訪問。

現在,我們要做的就是將此變量作為屬性添加到 setup() 函數返回的JavaScript對象中。

  1. <script> 
  2.   import { ref } from "vue"; 
  3.   export default { 
  4.     setup() { 
  5.       let name = ref("Raja"); 
  6.       return { 
  7.         username: name 
  8.       } 
  9.     } 
  10.  }  
  11. </script> 

 

返回的對象具有一個屬性,即username,值是上面聲明的名稱“Raja”。

習慣了Vue2,這是我經常忘記將變量作為屬性添加到返回對象中的一件事。

在大多數情況下,出于可維護性的目的,你希望屬性的鍵和值相同。

  1. return { 
  2.   name:name 

為了簡化此過程,請使用對象屬性值的簡寫,如下:

  1. return { 
  2.   name 

訪問Vue 3模板中的屬性

在模板中,使用雙大括號來訪問 name 屬性,該屬性類似于Options API。

  1. <template> 
  2.  {{name}} 
  3. </template> 

那么父div怎么辦?

在Vue 3中,我們不再需要父div!

現在,我們可以在模板標簽內部擁有div元素。

Reactive()

在Composition API中創建變量的另一種方法是使用 reactive() 作為包裝對象。

你可能想知道:為什么在Vue 3中需要兩種創建變量的方式?

嗯,ref() 是針對單一的基元類型的變量,比如字符串、數字等,當值發生變化時,它會保持反應性。

一旦我們創建了一個具有字典結構的數據(如對象)的變量,引用就會失去其反應性。

為此,我們需要一個 reactivity() 包裝對象而不是 ref() 對象。

Reactive() 接受一個對象并返回原始對象的反應代理。

讓我們看看如何做到這一點。

從Vue導入reactive包。

  1. import { reactive } from "vue"; 

類似于ref,使用一個reactive包裝對象,并將一個Javascript對象作為初始值傳遞給一個變量。

  1. <script> 
  2.   import { reactive } from "vue"; 
  3.   export default { 
  4.     setup() { 
  5.       let book = reactive({title: "The Best Vue 3 Book", price:19.99}); 
  6.     } 
  7.  }  
  8. </script> 

從Reactive()變量獲取值

好消息是,與ref不同,我們不必使用 .value 來展開 book 變量的值。

  1. <script> 
  2.   import { reactive } from "vue"; 
  3.   export default { 
  4.     setup() { 
  5.       let book = reactive({title: "The Best Vue 3 Book", price:19.99}); 
  6.       console.log(book.title); 
  7.       console.log(book.price); 
  8.     } 
  9.  }  
  10. </script> 

我們可以像往常一樣直接訪問 book 對象的屬性。

訪問Vue 3模板中的屬性

與前面的例子類似,我們需要做的就是在 setup() 函數返回的JavaScript對象中添加這個變量作為屬性。

  1. <script> 
  2.   import { reactive } from "vue"; 
  3.   export default { 
  4.     setup() { 
  5.       let book = reactive({title: "The Best Vue 3 Book", price:19.99}); 
  6.       return { 
  7.         book 
  8.       } 
  9.     } 
  10.  }  
  11. </script> 

我們可以像往常一樣使用雙花括號在模板中訪問它。

  1. <template> 
  2.   {{book.title}} 
  3.   {{book.price}} 
  4. </template> 

為了檢查反應性,在2秒后使用 setTimeout() 函數改變兩個屬性的值。

  1. <script> 
  2.   import { reactive } from "vue"; 
  3.   export default { 
  4.     setup() { 
  5.       let book = reactive({title: "Vue 3 Book", price:29.99}); 
  6.  
  7.       setTimeout(() => { 
  8.         book.title = "Vue 3 is awesome"
  9.         book.price = 19.99; 
  10.       }, 2000) 
  11.  
  12.       return { 
  13.         book 
  14.       } 
  15.     } 
  16.   }  
  17. </script> 

通過查看模板中2秒鐘后的值更改,你將能夠看到反應性。

那么數組呢?

數組是其中一種類型,我們可以通過使用 ref 或 reactive 包裝器對象來實現反應性。

在可能的情況下,我會使用 reactive 而不是 ref,以避免 .value 的語法。

無反應性變量

關于Vue 3的另一個好處是,我們現在可以創建一個變量,該變量可以是私有的,也可以在需要時不響應。

  1. <script> 
  2.   import { reactive } from "vue"; 
  3.   export default { 
  4.     setup() { 
  5.       let book = {title: "Vue 3 Book", price:29.99}; 
  6.       return { 
  7.         book 
  8.       } 
  9.     } 
  10.  }  
  11. </script> 

 

責任編輯:趙寧寧 來源: 今日頭條
相關推薦

2022-07-18 10:43:12

項目TienChinJava

2023-02-23 09:59:52

路由差異Vue

2020-03-25 18:23:07

Vue2Vue3組件

2022-06-21 12:09:18

Vue差異

2020-11-02 11:33:52

ReactVue應用

2021-12-08 09:09:33

Vue 3 Computed Vue2

2022-12-07 08:16:50

Vue 3技巧數組

2021-07-30 05:06:48

Vue 2Vue 3

2021-04-26 18:48:48

微應用React

2020-06-02 09:06:31

VueTransition前端

2023-12-20 15:41:46

VueViteVue 3

2023-03-30 08:10:31

Vue.js轉換和微交互

2022-08-17 11:36:18

Vue3插件

2020-10-20 18:42:17

Vue 3.0vue2.x數據

2023-11-19 18:53:27

Vue2MVVM

2021-01-15 08:10:26

Vue開發模板

2021-03-22 10:05:25

開源技術 項目

2025-08-18 02:22:00

2022-12-12 13:19:11

Vue3開發技巧

2023-11-28 09:03:59

Vue.jsJavaScript
點贊
收藏

51CTO技術棧公眾號

日韩欧美视频第二区| 97碰在线观看| 国产在线视频三区| 免费毛片在线看片免费丝瓜视频 | 日本一区二区高清不卡| 777午夜精品免费视频| 国产精品videossex国产高清| 午夜国产在线观看| 麻豆中文一区二区| 国内揄拍国内精品| 国产福利在线导航| 波多野结衣欧美| 欧美三级日本三级少妇99| 成人在线免费高清视频| 国产福利小视频在线观看| 国产高清久久久| 国产成人自拍视频在线观看| 婷婷激情四射网| 精品一区三区| 精品福利一区二区三区| 黄色一级片免费的| 久久电影tv| 一二三区精品视频| 在线国产伦理一区| 欧美成熟毛茸茸| 成人爱爱电影网址| 91亚洲国产成人久久精品网站| 国产精品第5页| 国语自产精品视频在线看8查询8| 国产亚洲视频在线| 黄色网址在线视频| 免费观看亚洲天堂| 欧美剧情电影在线观看完整版免费励志电影| 丰满少妇大力进入| 在线你懂的视频| 自拍偷拍国产亚洲| 亚洲福利av| 成人资源www网在线最新版| 99久久99久久精品国产片果冻| 亚洲直播在线一区| 国产又粗又长又黄| 免费成人在线视频观看| 日韩美女在线观看| 国产又大又黄视频| 国产日韩一区二区三区在线| 久久久久亚洲精品成人网小说| 成人在线观看小视频| 色婷婷综合网| 中文字幕亚洲综合| 国产精成人品免费观看| 免费毛片在线不卡| 亚洲欧美国产精品专区久久 | 99精品国产99久久久久久97| 老色鬼精品视频在线观看播放| 国产精品久久久久久久9999| 自拍偷拍18p| 日精品一区二区三区| 日韩av日韩在线观看| 亚洲视频 欧美视频| 羞羞视频在线观看欧美| 欧美孕妇与黑人孕交| 中文字幕一区二区人妻电影| 久久先锋资源| 国产精品久久久久久久久免费看| 岳乳丰满一区二区三区| 久久99久久精品| 91在线视频导航| 草逼视频免费看| 99热在这里有精品免费| 久久久精彩视频| 精品无人乱码| 中文字幕一区在线观看| 伊人久久在线观看| 91黄页在线观看| 欧美性jizz18性欧美| 日韩欧美视频网站| av高清一区| 在线不卡的av| 亚洲av无码专区在线播放中文| 精品久久ai| 国产一级揄自揄精品视频| 国产精品视频在| 欧美激情一级片一区二区| 午夜精品一区二区三区视频免费看| 在线观看黄网站| 日本欧洲一区二区| 亚洲一区二区三区视频播放| 日本xxxx人| 欧美极品aⅴ影院| 穿情趣内衣被c到高潮视频| 成人影音在线| 在线观看不卡视频| 久久av一区二区三| 国产麻豆精品久久| 精品自在线视频| 黄瓜视频在线免费观看| 国产在线一区观看| 久久综合福利| 最爽无遮挡行房视频在线| 丁香五六月婷婷久久激情| 中文字幕av不卡在线| youjizz亚洲| 在线中文字幕日韩| 中文字幕一区二区三区手机版| 日韩电影在线观看电影| av观看久久| 91在线看片| 偷拍一区二区三区| 亚洲黄色片免费| 免费成人结看片| 欧美第一黄网免费网站| 无码一区二区三区| 成人永久看片免费视频天堂| 日韩国产美国| 爱啪视频在线观看视频免费| 欧美精品三级日韩久久| 日本黄色网址大全| 午夜国产精品视频| 国产精品一区电影| 日本护士...精品国| 亚洲一区二区精品视频| 男人的天堂最新网址| 曰本一区二区三区视频| 国内外成人免费激情在线视频网站 | 午夜影院免费视频| 亚洲激情在线播放| 在线观看日本一区二区| 国产一区二区三区91| 97色在线观看| 亚洲精品字幕在线| 亚洲精品免费在线观看| 午夜剧场在线免费观看| 精品无人区麻豆乱码久久久| 5252色成人免费视频| 亚洲精品久久久久久无码色欲四季 | 国产传媒国产传媒| 丝袜脚交一区二区| 久久涩涩网站| 蜜臀久久精品| 亚洲精品久久久久久久久| 久久机热这里只有精品| 国产成人免费视频网站| 看一级黄色录像| 伊人亚洲精品| 久久久国产在线视频| 91精品国产乱码久久久久| 国产午夜亚洲精品羞羞网站| 国产欧美在线一区| 亚洲毛片免费看| 国产a∨精品一区二区三区不卡| 头脑特工队2在线播放| 欧美午夜影院在线视频| 波多野结衣 在线| 久久久久网站| 日本在线播放不卡| 久久久成人av毛片免费观看| 中文在线不卡视频| 亚洲专区第一页| 国产精品国产精品国产专区不蜜 | 欧美这里只有精品| 成人在线视频中文字幕| 欧美丰满老妇厨房牲生活| 成人1区2区3区| 天天射综合影视| 蜜桃传媒一区二区亚洲av| 久久一本综合频道| 五月天亚洲综合情| 4438五月综合| 久久久亚洲天堂| 你懂的视频在线| 欧美三级视频在线| 国产成人综合在线视频| 国产不卡一区视频| 免费观看精品视频| 日韩av二区| 99re国产视频| 亚洲国产成人二区| 日韩在线视频国产| 精品人妻无码一区二区色欲产成人| 亚洲成人资源在线| 男人天堂av电影| 国产做a爰片久久毛片| 妞干网视频在线观看| 日韩深夜影院| 91精品国产综合久久香蕉| 蜜芽在线免费观看| 亚洲第一区中文字幕| 国产精品传媒在线观看| 一区二区三区四区视频精品免费| 91精品国产自产| 久草热8精品视频在线观看| 国产在线视频综合| 视频一区在线观看| 2019国产精品视频| 成人欧美一区二区三区的电影| xx视频.9999.com| 色网站免费观看| 欧美猛男超大videosgay| 国产污片在线观看| 国产精品视频一区二区三区不卡| 一二三区视频在线观看| 免费观看在线色综合| 国产日本在线播放| 图片区亚洲欧美小说区| 另类视频在线观看+1080p| 电影中文字幕一区二区| 日韩av不卡电影| 免费污视频在线| 久久精品国产96久久久香蕉 | www亚洲欧美| 亚洲 美腿 欧美 偷拍| 欧美一区二区视频观看视频| 日本视频网站在线观看| 亚洲国产日日夜夜| 182在线观看视频| 久久久久久久电影| 香港三日本8a三级少妇三级99| 久久se这里有精品| 成人免费无码av| 国产毛片一区| 国产成人艳妇aa视频在线| 亚洲人metart人体| 亚洲精品视频一区二区三区| 希岛爱理av免费一区二区| 超碰97在线资源| 日韩第一区第二区| 亚洲一区二区三区久久| 国产成人午夜性a一级毛片| 日本高清视频精品| 交100部在线观看| 欧美激情影音先锋| 色婷婷av在线| 欧美成人剧情片在线观看| 美女隐私在线观看| 深夜成人在线观看| 成年网站在线| 在线观看国产成人av片| 黄色的视频在线免费观看| 亚洲男人天堂2023| 日韩三级电影网| 亚洲激情中文字幕| 无码国精品一区二区免费蜜桃| 精品三级在线看| 亚洲av无码片一区二区三区| 欧美一区二区三区精品| 国产精品一级视频| 欧美一级高清大全免费观看| 99热这里只有精品99| 欧美一区二区三区小说| 精品国产无码一区二区三区| 日韩欧美国产一区在线观看| 亚洲精品字幕在线观看| 精品久久国产老人久久综合| 亚洲精品综合网| 亚洲精美色品网站| 日av在线播放| 一区二区av在线| 免费网站免费进入在线| 精品国产一区二区三区久久| av色综合久久天堂av色综合在| 久久成人18免费网站| 欧美女同一区| 2018日韩中文字幕| 亚洲国产尤物| 91精品久久久久久久久中文字幕| 精品一区二区三区视频在线播放| av蓝导航精品导航| 欧美绝顶高潮抽搐喷水合集| 牛人盗摄一区二区三区视频| 精品视频亚洲| 好吊色视频988gao在线观看| 在线精品一区| 日韩 欧美 高清| 久久99久久99精品免视看婷婷 | 91丨九色丨黑人外教| 摸摸摸bbb毛毛毛片| 亚洲色图在线播放| 日本熟妇一区二区| 日本道色综合久久| 国产喷水福利在线视频| 亚洲国产一区自拍| 91电影在线播放| 欧美激情一区二区三区久久久 | 新67194成人永久网站| 日本888xxxx| 国产99久久久国产精品| 精品人妻无码一区二区三区| 亚洲欧美日韩中文字幕一区二区三区 | 欧美特级特黄aaaaaa在线看| 亚洲人成网站在线播| 午夜在线播放| 午夜精品一区二区三区在线视| 亚洲www啪成人一区二区| 亚洲自拍偷拍在线| 免费欧美一区| 草草草视频在线观看| 丝袜亚洲另类丝袜在线| 手机在线播放av| 日本一区二区三区四区在线视频| 久久精品视频免费在线观看| 在线观看一区二区精品视频| 亚洲黄色小说网址| 中文字幕最新精品| 性xxxxfreexxxxx欧美丶| 国产日韩一区在线| 亚洲8888| 国产免费黄色一级片| 久久aⅴ国产欧美74aaa| 亚洲精品中文字幕在线播放| 国产精品久久毛片| 天天综合网入口| 日韩欧美一区中文| 91网页在线观看| 国产91精品不卡视频| 日本少妇精品亚洲第一区| 日韩国产高清一区| 亚洲欧美日韩国产一区二区| 麻豆免费在线观看视频| 国产精品素人一区二区| 精品国产乱子伦| 日韩精品福利在线| 波多野结衣在线观看| 97超碰人人看人人| 天天精品视频| 亚洲精品www.| 国产视频911| 久久精品无码av| 精品一区二区亚洲| 日本黄色免费在线| 国产精品嫩草在线观看| 欧美日本精品| 免费国偷自产拍精品视频| 中文字幕一区二区视频| 中文区中文字幕免费看| 夜夜嗨av一区二区三区四区 | 国产在线观看a视频| 国产精品一区二区久久久| 精品产国自在拍| 国产熟人av一二三区| 久久久久久久久久看片| 青青视频在线免费观看| 亚洲色图综合久久| 欧美magnet| 日产精品高清视频免费| 日本午夜精品视频在线观看| 调教驯服丰满美艳麻麻在线视频| 日本韩国欧美一区| 成年人视频在线观看免费| 国产福利视频一区| 日本不卡免费一区| 中文字幕22页| 一区二区久久久| 色窝窝无码一区二区三区| 欧美诱惑福利视频| 欧美一级精品片在线看| www.这里只有精品| 亚洲欧美在线aaa| 精品国产乱码久久久久久蜜臀网站| 欧美激情一区二区三区成人| 精品国产导航| 人妻内射一区二区在线视频| 国产欧美一区二区三区在线老狼| 欧美视频xxxx| 久久中文字幕视频| h视频久久久| 国产一级不卡毛片| 中文字幕制服丝袜成人av | 日本午夜精品一区二区三区电影| 女人黄色一级片| 337p亚洲精品色噜噜狠狠| 亚洲精品天堂| 黄色国产精品一区二区三区| 老牛影视一区二区三区| 日本女人性生活视频| 欧美大片在线观看一区| 亚洲精品日产| 亚洲日本精品国产第一区| 国产精品一二三| 国产精品男女视频| 综合136福利视频在线| 日韩视频一二区| 欧美韩国日本在线| 国产精品福利电影一区二区三区四区| www.成人在线观看| 欧洲美女7788成人免费视频| 国产精品x453.com| 亚洲天堂av网站| 欧美美女bb生活片| segui88久久综合9999| 亚洲精品视频一二三| 成人免费av资源| 亚洲天堂中文在线| 亚洲91av视频| 亚洲色图插插| 中文字幕免费看| 欧美一级生活片| 欧美xxxx做受欧美护士| www.九色.com| 亚洲人成网站影音先锋播放| 欧美日韩激情视频一区二区三区|