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

Vue 3 已經 5 年了,為什么還有公司死守 Vue 2?

開發
咱們先來看一組數據,通過 @vue/compiler-sfc(代表 Vue3)? vs vue-template-compiler(代表 Vue2) 來看下雙方的下載量(PS:因為 Vue3 合并到主包后,無法直接區分 Vue3 和 Vue2 的下載量)

Vue 3 從 2020 年發布,到現在已經正式發布 5 年了,為什么還有那么多公司依舊在死守 Vue 2?

咱們先來看一組數據,通過 @vue/compiler-sfc(代表 Vue3) vs vue-template-compiler(代表 Vue2) 來看下雙方的下載量(PS:因為 Vue3 合并到主包后,無法直接區分 Vue3 和 Vue2 的下載量)

圖片

通過數據我們可以看出 雖然 @vue/compiler-sfc(代表 Vue3) 的下載量已經已經遠遠超過了 vue-template-compiler(代表 Vue2)。但是 依然有大約 25% 左右的下載量屬于 vue-template-compiler(代表 Vue2)。

這就證明市面上在運行的 Vue 項目中,依然有 至少四分之一 使用的是 Vue2。

那么此時問題就來了:為什么公司寧愿死守 Vue 2,不愿意遷移到 Vue 3?

1. “技術債” 太多,項目老且龐大

很多的 政企項目 老項目通常規模都比較龐大,上千甚至數千個頁面。遷移意味著:

  • 代碼要大改:Options API 寫法和 Composition API 寫法是有的,幾乎不能無縫遷移。
  • 生態要替換:Element UI、vuex、一些定制化的第三方庫,全都得換成對應的 Vue 3 版本。
  • 團隊要學習:很多老員工只熟悉 Vue 2,遷移要有培訓成本。

動靜太大。成功了 Leader 沒什么業績,一旦出了問題 Leader 還得背鍋。 你想想,誰會推動這個事情?

2. 公司盈利能力有限,新功能優先級高于技術升級

我們要知道技術公司,并不是只有大廠。中、小、微 公司的占比可以達到 98% 以上。

而這些公司的老板們最怕的一件事就是:“原來跑得好好的項目,升級后突然一堆 bug。”

Vue 3 確實更先進,但對于企業來說,穩定性 > 技術新潮。如果業務沒有強烈的驅動(比如:新業務 Vue2 做不了),一般不會貿然升級。

那么都聊到這里了,接下來咱們就來看下面試中常見的 Vue 問題

1. Vue 2 和 Vue 3 的響應式原理區別

這是屬于一個面試中的超常見問題,但是很多同學反而回答的并不好。大部分同學只會說:“Vue2 是 Object.defineProperty。Vue3 是 Proxy” ,然后就 沒有了....

在現在這么卷的面試場景中,這樣肯定是 不行的呀

Vue 2:defineProperty + 依賴收集

Vue 2 是“攔屬性”的做法(Object.defineProperty 給每個屬性掛 getter/setter)

  • 初始化時把對象 逐個屬性 轉成 getter/setter。讀時“收集依賴”,寫時“觸發依賴”。
  • 深度監聽要 遞歸遍歷,對象越大,初始化越慢。
  • 新增/刪除屬性感知不到,要 Vue.set(obj, 'x', v) / Vue.delete(obj, 'x')。
  • 數組是老大難:改長度、用下標改值這種改法,監聽不到;框架內部通過 包一層原型 去重寫會變更的數組方法(push/splice/sort……)來曲線救國。
// Vue 2 下的老坑
vm.arr[1] = 100     // 不觸發更新
vm.arr.length = 0   // 不觸發更新
vm.obj.newKey = 1   // 不觸發更新
// 需要:
this.$set(vm.arr, 1, 100)
this.$set(vm.obj, 'newKey', 1)
Vue 3:Proxy + WeakMap(桶) + effect

Vue 3 是“攔對象”的做法(Proxy 一把梭,讀寫都能劫持,還能知道讀的是哪個鍵、做的是什么操作)。

  • 用 Proxy 直接 劫持對象層級,不需要挨個屬性包 getter/setter。
  • 依賴收集結構是一個“大倉庫”:WeakMap(target) -> Map(key) -> Set(effects);讀用 track,寫用 trigger。
  • 新增/刪除屬性、數組下標、length 改動、Map/Set 等原生集合,統統能感知。
  • 可以“按操作類型”觸發更精準(比如 add/delete/clear 對 Map/Set 的影響范圍不同)。
// Vue 3 下這些都能更新
state.arr[1] = 100
state.arr.length = 0
state.obj.newKey = 1
state.set.add(1)
state.map.set('a', 1)

然后給大家一個 一句話面試背誦版


Vue 2 用 defineProperty 劫持“屬性”,需要深遞歸,新增/刪除屬性和數組下標/length 改動監聽不到,只能靠 set/delete 和重寫數組變更方法補救;

Vue 3 用 Proxy 劫持“對象”,依賴用 WeakMap -> key -> effects 精確追蹤,支持 Map/Set 等集合,reactive/ref/computed 基于 effect 與調度器實現,可精細觸發、可自定義調度,性能和心智負擔都更優。

要是面試官繼續追問 “為什么 Vue 3 還能知道我改的是 arr.length?”

你就補一句:因為 Proxy 的 set 能拿到 目標、鍵、值,key === 'length' 的時候做專門的觸發邏輯,這在 Vue 2 的 getter/setter 里拿不到這么完整的上下文。

2. Vue 2 和 Vue 3 的 Diff 算法的區別

這個也是常見問題,但是這里會涉及到 算法,很多同學可能對算法并不是很熟悉。

因此我先把結論給大家拋出來:


Vue 2 的子節點 diff 更像“四指針+搬磚”(雙端指針法,必要時建一張 key→index 表,按匹配到哪就把哪兒搬過去);


Vue 3 的子節點 diff 是“先粗篩再精算”(兩頭同步 + 中間一坨一次性掛載/卸載;真要挪位置時再用 LIS 最長遞增子序列 算出最少移動)。

Vue 2:雙端指針
  • 針對 keyed children,用四個游標在老/新列表兩頭對沖:oldStart?newStart、oldEnd?newEnd,還會嘗試交叉匹配(oldStart ? newEnd、oldEnd ? newStart)。
  • 都沒對上時,再用一張 key→index 的表在老列表里定位“同 key 的舊節點”,找到了就把這個舊 DOM 挪到合適位置。
  • 沒 key 或沒找到,就當成新節點 創建 DOM。
  • 這個策略的好處是實現簡單、無需昂貴的預處理;但在“局部打散重排”的場景里,移動次數不一定最少,有時會“邊比邊搬”,搬得有點多。

小例子(老:[A,B,C,D] → 新:[B,A,D,C]):Vue 2 會在指針對沖的過程中,分別把 A、B、C、D 對來對去,多次移動,但整體復雜度仍是 O(n)。

Vue 3:快速 Diff + LIS 的“先粗后細”

Vue 3 的 patchKeyedChildren 大致分四步,思路更克制:

  • 前綴同步:從左向右比,直到第一對不等為止。
  • 后綴同步:從右向左比,直到第一對不等為止。

這兩步很常見于實際變更(前后加條目),能“秒過”大段不變區域。

  • 一坨新增/一坨刪除:

若老的先耗盡,剩下的新節點整段 一次性掛載;

若新的先耗盡,老列表剩余整段 一次性卸載。

  • 中段重排(真正的“難點”):

對中間這段構建 新Key→新Index 映射,并用一個 source 數組記錄“老節點在新位置的索引”(找不到記 -1)。

先把 source 中為 -1 的老 DOM 全部 卸載(新里沒有了)。

再在 source 上跑 LIS(最長遞增子序列),LIS 表示“本就順序正確、可以不動的那些 DOM”;

不在 LIS 里的,按新順序 最少次數地插/移,把坑補齊。

同樣的例子(老:[A,B,C,D] → 新:[B,A,D,C]):Vue 3 會很快同步兩頭(其實同步不了很多),進入中段后通過 source+LIS 直接算出“最少需要動誰”,移動次數更少。

責任編輯:武曉燕 來源: 程序員Sunday
相關推薦

2024-07-04 08:56:35

Vue3項目Pinia

2021-01-20 14:25:53

Vue3CSS前端

2021-08-23 13:25:25

Vue3CSS前端

2025-03-26 10:29:22

Vue3前端API

2025-02-18 08:10:00

Vue 3JavaScrip開發

2024-02-05 21:48:25

VueReactHooks

2021-08-14 23:08:56

蘋果iPhone XSiPhone 11

2021-10-14 23:11:04

手機屏幕LCD

2022-03-24 20:42:19

Vue3API 設計Vue

2021-12-06 12:48:40

Gosyncatomic

2025-10-17 07:10:00

前端開發Vue

2024-03-05 08:33:52

OptionsAPIcomuted

2021-07-30 05:06:48

Vue 2Vue 3

2023-08-09 10:21:07

Vue 3Reactive

2025-07-29 08:05:37

2022-01-12 20:04:09

網絡故障斷網事件網絡安全

2021-10-08 06:10:43

前端技術Vue

2014-11-18 10:36:36

互聯網

2021-06-26 06:29:14

Vue 2Vue 3開發

2020-10-20 18:42:17

Vue 3.0vue2.x數據
點贊
收藏

51CTO技術棧公眾號

欧美亚洲另类视频| av电影免费在线观看| 色偷偷偷在线视频播放| 亚洲男人都懂第一日本| 亚洲欧洲国产日本综合| 欧美精品福利在线| youjizzxxxx18| 5566中文字幕| 女厕盗摄一区二区三区| 久久综合九色综合欧美98| 久久躁日日躁aaaaxxxx| 亚洲国产精品毛片av不卡在线| 国产美女明星三级做爰| 国产免费播放一区二区| 亚洲影院免费观看| 欧美国产激情18| jizzzz日本| 亚洲AV无码精品国产| 国产一区二区电影在线观看| 欧美日韩国产在线播放网站| 高清视频一区| 少妇太紧太爽又黄又硬又爽小说| 深夜在线视频| 国产精品看片你懂得| 日本精品视频网站| 日韩成人av一区二区| 在线h片观看| 91麻豆精品视频| 性欧美xxxx交| www.com日本| sm国产在线调教视频| 日本aⅴ免费视频一区二区三区| 日韩毛片在线观看| 日本一道本久久| 亚洲经典一区二区| 日韩国产欧美三级| 亚洲午夜未删减在线观看| 成人一对一视频| 黄色免费在线网站| 国产一区二区在线视频| 日韩中文字幕免费看| 在线免费av播放| 欧美私人网站| 久久爱www久久做| 日韩中文理论片| 奇米视频888| 九色porny丨首页在线| 久久免费电影网| 99三级在线| 日韩三级视频在线播放| 女仆av观看一区| 欧美日韩日本国产| 欧美二级三级| 亚洲GV成人无码久久精品| 日韩欧美美女在线观看| 日韩欧美高清视频| 天堂精品一区二区三区| 国产尤物视频在线观看| 欧美在线日韩| 亚洲大胆美女视频| 黑人糟蹋人妻hd中文字幕 | 一本久久a久久精品亚洲| 久久综合九色99| 特级西西444www高清大视频| 国产精品久久久久9999赢消| 日韩欧美你懂的| 成人免费播放器| 免费一级在线观看| 久久99深爱久久99精品| 国产成人avxxxxx在线看 | 狼人天天伊人久久| 91国产免费观看| 亚洲图片小说在线| 国产精品久久久久久无人区 | 亚洲码在线观看| 香蕉视频999| 日韩一区二区三区四区五区| 亚洲综合色成人| 国产91在线亚洲| 你懂的免费在线观看| 91美女蜜桃在线| 久久一区免费| 成人在线观看网站| 成人av在线资源网| 国产在线视频91| 日本学生初尝黑人巨免费视频| 教室别恋欧美无删减版| 一区二区三区天堂av| 国模大尺度视频| 亚洲不卡系列| 亚洲成人一区在线| 特级毛片在线免费观看| 久蕉依人在线视频| 成人av动漫在线| 免费久久99精品国产自| av在线1区2区| 91社区在线播放| 日本免费高清一区二区| 香蕉视频911| 国产精品主播直播| 国产日韩欧美中文| 精品人妻伦一二三区久久| 视频在线观看一区| 91精品国产91久久久久久久久| 性欧美疯狂猛交69hd| 欧美日韩国产在线观看网站| 精品国产乱码久久久久久久久| 国产免费又粗又猛又爽| 免费一区二区三区在线视频| 欧美日韩国产影片| 亚洲色图欧美日韩| 91成人福利| 日韩欧美区一区二| 亚洲国产无码精品| 香蕉一区二区| 久久精品国产亚洲精品2020| 国产精品免费无码| 欧美欧美黄在线二区| 国产丝袜高跟一区| 天天做夜夜爱爱爱| 久久综合国产| 中文字幕视频一区二区在线有码| 精品无码在线观看| 伊人成人在线视频| 欧美大片在线看免费观看| 国产suv精品一区二区33| 性久久久久久| 欧美在线视频一区| 亚洲欧美一区二区三区在线观看| 国产资源在线一区| 快播亚洲色图| 国产丝袜在线| 日本道在线观看一区二区| 国产伦精品一区二区三区精品| 色综合天天爱| 久久久成人的性感天堂| 男人天堂2024| 不卡视频一二三| 中国一级大黄大黄大色毛片| 在线中文免费视频| 欧美日韩一区二区三区不卡| 999精彩视频| 欧美黑人巨大videos精品| 欧美成aaa人片免费看| 精品无码一区二区三区蜜臀 | 久久久av免费| 中文字幕在线网站| 久久精品国产一区二区| 成人免费视频a| 精品国产九九九| 国产精品妹子av| 日本激情视频在线| 国产一区二区观看| 日韩美女在线播放| 欧美挠脚心网站| 精品国产成人在线| 草草草在线视频| 日本综合视频| 亚洲日本中文字幕免费在线不卡| 成人黄色短视频| 日本怡春院一区二区| 亚洲春色在线| 欧美日韩色网| 日本道在线观看一区二区| 久久av无码精品人妻系列试探| 97视频精品| 91精品久久久久久久| 麻豆视频免费在线观看| 在线不卡欧美精品一区二区三区| 日本天堂在线播放| 伊人久久大香线蕉av超碰演员| 波多野结衣久草一区| 国产一线二线在线观看| 欧美亚洲国产一卡| 久久久久久婷婷| 国产亚洲精品自拍| 91丨九色丨国产| 黄网站在线观看| 欧美专区在线观看一区| 香蕉视频污视频| 亚洲一区成人| 亚洲高清在线观看一区| 深夜福利亚洲| 欧美极品少妇xxxxⅹ免费视频 | 欧美午夜精品理论片a级大开眼界 欧美午夜精品久久久久免费视 | 国产精品中文有码| 国产色一区二区三区| 国产成人av| 成人午夜激情网| √8天堂资源地址中文在线| 欧美色区777第一页| 2025国产精品自拍| 成人avav在线| 欧美伦理视频在线观看| 亚洲乱码免费伦视频| 国产激情视频一区| 久草中文在线| 亚洲第一精品久久忘忧草社区| av片免费观看| 亚洲精品中文字幕乱码三区| 性欧美极品xxxx欧美一区二区| 偷偷www综合久久久久久久| 国产福利久久| 国产综合色在线观看| 欧美高清不卡在线| 国产中文在线观看| 日韩精品一区二区三区蜜臀 | 亚洲码欧美码一区二区三区| 色婷婷av一区| 一区二区国产精品精华液| 97精品久久久久中文字幕| 国产一区一区三区| 欧美自拍视频| 成人夜晚看av| 久九九久频精品短视频| 亚洲娇小xxxx欧美娇小| 国产精品成人国产乱| 国产成人aaa| 大胆欧美熟妇xx| 51亚洲精品| 国产精品免费一区二区三区都可以 | 欧美婷婷久久五月精品三区| 亚洲综合在线观看视频| 国产又粗又黄又猛| 免费久久99精品国产| 日韩精品伦理第一区| 忘忧草在线影院两性视频| 日韩免费在线观看| 最近中文字幕在线观看视频| 亚洲高清免费在线| 欧美特级一级片| 国产成人在线视频网站| 99re6这里有精品热视频| 日韩在线视频一区二区三区| 久久久久久久久久久免费| 午夜精品一区| 欧美一区三区四区| 国产精品第二十页| 亚洲视频一二三区| 中文字幕在线视频播放| 九九热在线视频观看这里只有精品| aa免费在线观看| 99成人精品| 欧美一区二区三区在线播放| 国产精品99久久免费观看| 欧美一二三视频| 久久亚洲资源| 欧美高清不卡在线| 国产天堂在线播放视频| 欧美高清视频在线| 亚洲综合伊人久久大杳蕉| 久久色在线播放| 免费av不卡| 日韩在线观看免费网站| 亚洲精品承认| 久久精品99久久香蕉国产色戒| 在线观看完整版免费| 中文字幕视频在线免费欧美日韩综合在线看 | 国产精品一区二区久久国产| 国产91在线视频蝌蚪| 日韩一区二区av| 女女色综合影院| 精品国产一区二区三区四区在线观看| 在线日本中文字幕| 久久精品久久久久久| 99热国产在线| 欧美激情精品久久久久久久变态| 青春草视频在线| 久久久亚洲影院| 8888四色奇米在线观看| 最近中文字幕日韩精品| 秋霞午夜理伦电影在线观看| 久久亚洲电影天堂| 日韩av激情| 中文字幕亚洲一区二区三区五十路| 高清性色生活片在线观看| 日韩免费成人网| 欧美一级视频免费| 欧美日韩久久久久久| 中文字幕+乱码+中文乱码91| 777精品伊人久久久久大香线蕉| 久久国产黄色片| 亚洲精选视频免费看| 久久久久久久99| 色综合天天综合在线视频| 国产偷人爽久久久久久老妇app | 欧美成人一区二区三区四区| 欧美日韩在线一区二区| 精品国产亚洲AV| 日韩电影免费观看中文字幕| 中文字幕精品在线观看| 91精品国产综合久久蜜臀| 亚洲精品成人区在线观看| 亚洲精品影视在线观看| 精品国产白色丝袜高跟鞋| 性欧美办公室18xxxxhd| 亚洲一区二区三区四区| 4k岛国日韩精品**专区| 国产激情久久| 日韩美女在线观看| 国产精品一区二区三区av| 国产精品一区二区久久国产| 91精品国产自产在线丝袜啪 | 性少妇videosexfreexxx片| 日韩av中文字幕在线| 男女啪啪在线观看| 欧美诱惑福利视频| 视频二区欧美毛片免费观看| 免费av在线一区二区| 午夜日韩av| av观看免费在线| 国产剧情av麻豆香蕉精品| 国产精品无码一区二区三区免费| 国v精品久久久网| 美女100%露胸无遮挡| 午夜精品福利视频网站| 日韩精品一区二区三区国语自制| 欧美午夜精品一区| 五月婷婷伊人网| 欧美精品一二区| 国产69精品久久久久按摩| 精品国产区在线| 美国成人xxx| ijzzijzzij亚洲大全| 天堂av在线一区| 国产美女视频免费观看下载软件| 成人99免费视频| 国产视频精品免费| 色八戒一区二区三区| 天天操天天爱天天干| 日韩毛片中文字幕| 欧美videos另类精品| 国产又爽又黄的激情精品视频| 亚洲人成网77777色在线播放| 国产激情片在线观看| 久久国产欧美日韩精品| 性少妇bbw张开| 精品久久中文字幕| 黄色片一区二区三区| 欧美精品一区在线观看| a级毛片免费观看在线| 国产免费一区视频观看免费| 精品72久久久久中文字幕| 亚洲 高清 成人 动漫| 日日骚欧美日韩| 亚洲欧美视频在线播放| 亚洲第一福利一区| 亚洲AV无码乱码国产精品牛牛 | 在线中文字日产幕| 亚洲激情欧美激情| 懂色av.com| 欧美α欧美αv大片| 日本激情一区二区| 欧美激情精品久久久久| av日韩精品| 日韩精品最新在线观看| 久久精品国语| 波多野结衣天堂| 久久久欧美精品sm网站| 午夜国产小视频| 在线不卡a资源高清| 黄色在线免费看| 亚洲va欧美va国产综合剧情| 极品国产人妖chinesets亚洲人妖| 成人国产一区二区三区| 国产91丝袜在线播放| 国产无码精品在线观看| 亚洲国产精品大全| 欧美一区二区三区喷汁尤物| 98精品国产高清在线xxxx天堂| 在线日韩三级| 国产人妖伪娘一区91| 日韩午夜电影网| 欧美丝袜在线观看| 99久久久精品| 男人的天堂官网| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 搞黄视频在线观看| 成人在线播放av| 国产精品v亚洲精品v日韩精品| 欧美黄色一级片视频| 国产精品三级电影| 国产夫妻自拍av| 中文字幕免费精品一区高清| 欧洲亚洲精品| 日韩成人手机在线| 久久影院午夜论| 亚洲熟妇av乱码在线观看| 亚洲人a成www在线影院| 黄色欧美视频| 欧洲一区二区在线| 久久国产免费看| 日本一本高清视频| 中文字幕日韩av电影| 9国产精品午夜| 欧美黄色一级片视频| 亚洲卡通欧美制服中文| 免费在线稳定资源站| 亚洲中国色老太| 午夜在线观看免费一区|