精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

亚洲精品久久久蜜桃| 国产精品婷婷| 精品少妇一区二区三区免费观看 | 欧美大片一区| 日韩av中文字幕在线播放| 少妇黄色一级片| 精品精品导航| 欧美国产精品久久| 国产精品久久久久久久天堂第1集 国产精品久久久久久久免费大片 国产精品久久久久久久久婷婷 | 欧美momandson| 日韩一区欧美一区| 久久久久网址| www香蕉视频| 日本欧美一区二区三区乱码| 久久久久久高潮国产精品视| 激情无码人妻又粗又大| 欧美日韩一本| 日韩视频免费观看高清完整版在线观看| 日韩中文字幕在线视频观看 | 国色天香2019中文字幕在线观看| 欧美成人另类视频| 激情小说亚洲图片| 91精品国产色综合久久| 国产精品视频分类| 在线中文字幕播放| 五月婷婷欧美视频| 黄色成人在线免费观看| 3d成人动漫在线| 久久精品男人天堂av| 国产区一区二区| 国产精品无码免费播放| 天堂久久一区二区三区| 97超视频免费观看| 欧美精品乱码视频一二专区| 欧美成人直播| 在线播放国产一区中文字幕剧情欧美 | 五月天丁香激情| 国产韩日影视精品| 日韩小视频在线| 美国黑人一级大黄| 精品一区av| 亚洲女在线观看| 中文字幕在线观看网址| 黑人久久a级毛片免费观看| 欧美精品精品一区| 中文字幕永久有效| 国产精品原创视频| 欧美写真视频网站| 国产熟人av一二三区| 亚洲精品国产精品国产| 欧美日韩免费网站| 精品中文字幕av| 亚洲天堂免费电影| 一本大道久久a久久综合婷婷| 日本www在线播放| 妞干网免费在线视频| 无码av免费一区二区三区试看| 国产一级做a爰片久久毛片男| 1区2区在线观看| 亚洲一区免费视频| 成年女人18级毛片毛片免费| www.超碰在线| 欧美性猛交xxxx免费看久久久| 少妇无码av无码专区在线观看| а√天堂中文资源在线bt| 精品国产乱码久久久久久虫虫漫画 | 99久久久无码国产精品不卡| 欧美国产偷国产精品三区| 日韩在线观看网站| 激情五月深爱五月| 999国产精品| 欧美麻豆久久久久久中文| 青青草偷拍视频| 亚洲久久成人| 国产精品欧美在线| 国产黄色一区二区| www.av精品| 视频三区二区一区| 18+视频在线观看| 婷婷夜色潮精品综合在线| 国产a级一级片| 欧美亚洲二区| 亚洲第一免费网站| 欧洲美熟女乱又伦| 欧美69wwwcom| 日韩免费视频在线观看| 一级黄色a视频| 成人激情动漫在线观看| 欧美精品成人一区二区在线观看 | 亚洲这里只有精品| 亚洲性视频在线| 国产一区二区三区18| 欧美做爰爽爽爽爽爽爽| 亚洲一区一卡| 95av在线视频| 女人天堂在线| 亚洲人xxxx| chinese少妇国语对白| 国产乱码精品一区二区三区亚洲人 | 色妞www精品视频| 99精品视频免费版的特色功能| 美女午夜精品| 久久影视免费观看| 欧美黄色一级大片| 国产.欧美.日韩| 亚洲成人午夜在线| 蜜桃av在线| 日韩欧美亚洲另类制服综合在线| 精品人妻无码一区二区三区换脸| 欧美jjzz| 成人网在线观看| 黄网在线观看| 五月婷婷另类国产| 欧美人与性动交α欧美精品| 欧美亚洲国产一区| 91a在线视频| 亚洲精品久久久蜜桃动漫 | 日韩伦理一区二区| 精品一区二区三区四区在线| 亚洲国产精品久| 久久精品99国产精品日本| 精品国产乱码久久久久久丨区2区| 香蕉视频免费在线播放| 色婷婷久久久亚洲一区二区三区| 人妻 丝袜美腿 中文字幕| 天天射成人网| 国产精品丝袜白浆摸在线| 日本大片在线观看| 亚洲va韩国va欧美va| 在线观看免费视频污| 久久一区二区三区喷水| 国产成人午夜视频网址| 可以在线观看的av网站| 欧美日韩美女视频| 无套内谢大学处破女www小说| 欧美另类视频| 91精品国自产在线观看| 精品自拍一区| 欧美高清视频不卡网| 欧美一区二区三区粗大| 日韩精品电影在线| 青青草久久网络| 激情都市亚洲| 亚洲美女黄色片| 成人免费毛片男人用品| 久久久噜噜噜久久中文字幕色伊伊| 奇米精品一区二区三区| 国产精品qvod| 777国产偷窥盗摄精品视频| 国产成人手机在线| 亚洲va国产va欧美va观看| 日本三级日本三级日本三级极| 国产精品a级| 国产精品午夜av在线| sis001亚洲原创区| 日韩av在线免费看| 中文字幕亚洲乱码熟女1区2区| 久久综合狠狠综合| 一区二区在线播放视频| 日本精品三区| 亚洲一区二区三区毛片| 懂色av一区| 日韩av在线精品| 无码人妻精品一区二| 日本一区二区三区高清不卡| 日本高清久久久| 欧美黄免费看| 精品久久久久久一区二区里番| 日本а中文在线天堂| 亚洲夜晚福利在线观看| 一级黄色片视频| 亚洲精品精品亚洲| 亚洲综合自拍网| 青娱乐精品视频在线| 一区二区三区四区免费视频| 日韩免费成人| 国产91|九色| 1024视频在线| 亚洲国产精品美女| 在线黄色av网站| 亚洲综合丝袜美腿| 中文字幕第4页| 国产一本一道久久香蕉| 热99这里只有精品| 欧美gayvideo| 国产在线一区二| 素人啪啪色综合| 欧美国产日韩中文字幕在线| 暖暖视频在线免费观看| 欧美一二三四在线| av图片在线观看| 中文字幕佐山爱一区二区免费| 香港三日本8a三级少妇三级99| 日本午夜精品视频在线观看| 屁屁影院ccyy国产第一页| 国产99亚洲| 国产91一区二区三区| japanese23hdxxxx日韩| 欧美美最猛性xxxxxx| 国产在线自天天| 精品国产一区二区精华| 中文字幕有码视频| 欧美日韩国产精品一区二区不卡中文| 992在线观看| 久久久久久一二三区| 麻豆传媒在线看| 另类专区欧美蜜桃臀第一页| 黄色免费观看视频网站| 亚洲国产精品成人| 日本免费一区二区三区| 国产精品极品| 91香蕉视频在线下载| 久久久加勒比| 国产成人精品网站| a√中文在线观看| 欧美精品生活片| 91在线不卡| 亚洲色图激情小说| 婷婷视频在线观看| 日韩欧美国产一区在线观看| 一区二区日韩视频| 91成人国产精品| 伊人手机在线视频| 亚洲妇女屁股眼交7| 国产午夜手机精彩视频| 国产精品―色哟哟| 亚洲一区视频在线播放| 97久久超碰国产精品| 欧美激情 亚洲| 国产成人鲁色资源国产91色综| 中文av字幕在线观看| 青青草国产成人av片免费| 久草青青在线观看| 国产亚洲综合精品| 2018国产在线| 亚洲狠狠婷婷| 国产精品999视频| 日韩视频三区| 国产精品自拍片| 国产精品日本欧美一区二区三区| 国产夫妻自拍一区| 黑人一区二区三区四区五区| 日本天堂免费a| 好看的亚洲午夜视频在线| 亚洲理论电影在线观看| 亚洲午夜视频| 国产精品网站免费| aⅴ色国产欧美| 国产男女在线观看| 亚洲男女自偷自拍| 国产无套内射久久久国产| 美女被久久久| 五月天激情视频在线观看| 久久精品国产成人一区二区三区| 久久久久久久久久久久91| 奇米色一区二区三区四区| 天天干天天操天天做| 国产一区二区三区精品欧美日韩一区二区三区 | 青草影视电视剧免费播放在线观看| 欧美成aaa人片免费看| 日韩三级免费| 欧美一区二区视频97| 成人午夜精品| 91夜夜揉人人捏人人添红杏| 国产精品欧美一区二区三区不卡| 99久久99久久| 免费看成人吃奶视频在线| 日韩片电影在线免费观看| 天天精品视频| 日本一区午夜艳熟免费| 免播放器亚洲| 污色网站在线观看| 国产成人免费av在线| 人妻丰满熟妇aⅴ无码| 中文字幕第一区第二区| 91高清免费看| 精品人伦一区二区三区蜜桃免费| 国产亚洲欧美日韩高清| 欧美精选一区二区| 黑人乱码一区二区三区av| 亚洲男人的天堂网站| 日本中文字幕在线播放| 欧美激情精品久久久| 成人爽a毛片免费啪啪| 国产男人精品视频| 豆花视频一区二区| 五码日韩精品一区二区三区视频| 欧美三区视频| 韩国日本美国免费毛片| 国产99久久久久| 91成人在线免费视频| 亚洲精品成人在线| 久久久久久久久久成人| 日韩欧美一区二区在线视频| 青青草视频在线观看| 欧美大片免费看| 国产极品嫩模在线观看91精品| 成人午夜电影在线播放| 日韩精品欧美| 欧美黄色免费影院| 国产激情视频一区二区三区欧美| 国产手机在线观看| 亚洲宅男天堂在线观看无病毒| 国产精品无码粉嫩小泬| 亚洲精品国产拍免费91在线| 成人video亚洲精品| 日韩男女性生活视频| 精品综合久久88少妇激情| 自拍另类欧美| 葵司免费一区二区三区四区五区| 被黑人猛躁10次高潮视频| 日本一区二区三区四区在线视频 | 国产亚洲在线| 亚洲一区和二区| 自拍偷拍亚洲综合| 国产精品xxxxxx| 亚洲乱码一区二区| 国产精品186在线观看在线播放| 91精品国产综合久久香蕉最新版| 香蕉久久夜色精品国产使用方法| 日韩国产小视频| 国产一区二区三区四区五区入口| 欧美人与禽zoz0善交| 色就色 综合激情| 亚洲三级中文字幕| 欧美精品成人91久久久久久久| 亚洲图片小说区| 一级特黄录像免费播放全99| 日本在线不卡一区| 99久久人妻无码精品系列| 欧美日韩在线第一页| 日本黄视频在线观看| 久久久久久久久爱| 香蕉成人app| 高清无码一区二区在线观看吞精| 国内精品免费**视频| 亚洲av无一区二区三区| 欧美日韩视频在线观看一区二区三区 | 91小视频免费看| 国产情侣在线视频| 亚洲国产成人精品久久| 国产盗摄——sm在线视频| 国产精品精品软件视频| 欧美成人首页| 香蕉视频免费网站| 一区二区理论电影在线观看| 亚洲大尺度视频| 久久久久久久久国产精品| 日本一区二区乱| 久久在线中文字幕| 成人av免费在线| 西西44rtwww国产精品| 日韩电影在线观看中文字幕| 是的av在线| 日本一区免费观看| 免费高清在线一区| 亚洲aaa视频| 日韩欧美一级精品久久| 牛牛在线精品视频| 精品欧美国产| 日韩一区精品视频| 亚洲天堂精品一区| 欧美一区二区三区色| 福利网站在线观看| 欧美日韩一区在线观看视频| 奇米精品一区二区三区在线观看| 天天色影综合网| 欧美本精品男人aⅴ天堂| 鲁鲁在线中文| 日韩欧美精品一区二区| 狠狠狠色丁香婷婷综合久久五月| 欧美黄色一级网站| 日韩极品精品视频免费观看| 超薄肉色丝袜脚交一区二区| 在线无限看免费粉色视频| 成人综合在线网站| 四虎成人在线观看| 久久久精品一区二区| 国产精品任我爽爆在线播放| 88av.com| 一区二区激情小说| 蜜桃视频在线观看网站| 成人黄色免费网站在线观看| 伊人成人在线视频| 人人爽人人爽人人片| 精品久久久久久综合日本欧美| 手机在线观看av网站| 一区二区三区四区五区视频| 成人在线综合网站| 一区二区三区麻豆| 欧美国产欧美亚洲国产日韩mv天天看完整 | 青春草免费在线视频| 农村寡妇一区二区三区| 精品亚洲aⅴ乱码一区二区三区| 日韩av男人天堂| 日韩亚洲综合在线| 日本中文字幕在线一区| 欧美xxxxxbbbbb| 欧美综合亚洲图片综合区| 麻豆福利在线观看|