对于框架设计与代码实现的思考:

框架设计指的是api的调用方式,代码实现是指为了实现这样的api调用方式,需要怎么样的代码实现。

在vue2和vue3的层面都有模板编译的影子,这一层我们先不说,只说,模板编译后的api的调用。在vue2里面,vue2被设置成this.msg = "hello 2"这中情况,所以需要一个defineproperty去监听get和set,在vue3中,变成了msg.value = "hello 2"这种,因此,需要首先构造一个msg对象,再对.value进行get和set。

再比如,vue2中有个.extend方法,能够构造出一个新的组件Class,那么可以肯定,这个Class肯定是基于Vue的,并且,从字面意思上可以看出,他继承自Vue。vue2中所有的功能,都是在一个对象里面,建立各种属性的过程,因此,vue2对于原型链用的肯定比较深。

很多东西都可以深挖的,今天先分享到这里
展开
评论