當前位置:編程學習大全網 - 源碼下載 - 關於Vue3.0的壹些觀點與理解

關於Vue3.0的壹些觀點與理解

1: 使用了 Vue3,是否都要遵循用 Composition API 的形式去寫頁面?

答案是否定的。需要註意壹點:Vue3 並沒有廢棄 Options API ,甚至還會全力支持兼容 Vue2 語法的工作。而 CompositionAPI 出現的背景主要是為了解決邏輯抽象和和復用的問題,但不意味著它成為了 Vue3 的標準。如何區分場景使用 Options API or Composition API 主要看業務邏輯的復雜程序,例如壹些簡單的 toast/button 等基礎組件,用 options API 形式會更加清晰和簡潔。而相對復雜的業務邏輯,可以用 Composition API ,可以把單獨壹塊邏輯抽離到壹個模塊。

2: Vue3 中混用 Options API 和 Composition API 會不會對性能產生影響?

不會。其實從問題 1 就可以明顯地看出來並不會對性能產生任何影響。不應該被 option api 限制思維,而更多關註邏輯內聚問題

3: 關於 setup 中沒有 this 的問題

官方是這樣說的:在 setup() 內部,this 不會是該活躍實例的引用,因為 setup() 是在解析其它組件選項之前被調用的,所以 setup() 內部的 this 的行為與其它選項中的 this 完全不同。這在和其它選項式 API 壹起使用 setup() 時可能會導致混淆

我們可以理解為:this未指向當前的組件實例,在setup被調用之前, data , methods , computed 等都沒有被解析,但是組件實例確實在執行 setup 函數之前就已經被創建好了

4: Vue3 響應式比 Vue2 的性能要好嗎?

vue3 出來的時候,往往聽到的壹些答案都是說 Vue3 性能比 Vue2 性能好,但真的是嗎?

首先從實現上來講:我們都知道 vue2 中的響應式主要歸功於 Object.defineProperty , 它主要劫持對象的屬性,所以它不能觀測到對象屬性的添加和刪除,而在 vue 中,是用 Proxy 實現的,劫持的是整個對象,能規避掉 vue2 留下的問題,但也有明顯的缺點就是兼容性不夠強。但是對比 Vue2,妳需要知道的是 vue3 性能上的優勢主要還是體現在初始化階段。因為 Vue2 中定位響應式對象時,會遞歸把子對象變成響應式。而 Vue3 其實是惰性執行:在對象屬性被真正訪問的時候才會遞歸執行子對象變成響應式。

5: Vue3與Vue2響應式的區別

vue也都提供了解決方案: $set 和 $delete ,需要理解的直接移步 深入響應式原理 。

更多內容可以參考 ES6 Proxy

6: Vue3對比Vue2的優勢及新特性原理

  • 上一篇:VS2010開發Qt,怎麽顯示qDebug信息
  • 下一篇:徐聞到海口徐聞到海口坐船要多久
  • copyright 2024編程學習大全網