70%的人都答错了的面试题,vue3的ref是如何实现响应式的?

  • 70%的人都答错了的面试题,vue3的ref是如何实现响应式的?已关闭评论
  • 42 次浏览
  • A+
所属分类:Web前端
摘要

最近在我的vue源码交流群有位面试官分享了一道他的面试题:vue3的ref是如何实现响应式的?下面有不少小伙伴回答的是Proxy,其实这些小伙伴只回答对了一半。


前言

最近在我的vue源码交流群有位面试官分享了一道他的面试题:vue3的ref是如何实现响应式的?下面有不少小伙伴回答的是Proxy其实这些小伙伴只回答对了一半
70%的人都答错了的面试题,vue3的ref是如何实现响应式的?

  • 当ref接收的是一个对象时确实是依靠Proxy去实现响应式的。

  • 但是ref还可以接收 stringnumber 或 boolean 这样的原始类型,当是原始类型时,响应式就不是依靠Proxy去实现的,而是在value属性的gettersetter方法中去实现的响应式。

本文将通过debug的方式带你搞清楚当ref接收的是对象和原始类型时,分别是如何实现响应式的。注:本文中使用的vue版本为3.4.19

关注