0%

前言

如果在TS中声明了一些对象类型,使用这些对象类型来注解变量时,这些变量值的初始化往往需要自己手动按对象结构填写一遍,尽管有了TS类型声明和IDE的智能提示的加持下,这个填写过程还是很透明快速的;但是仔细一想,明明在声明这些对象类型的时候已经填过一层结构,为啥在数据初始化的时候又不得不去再填一遍,难道就不能自动根据声明的结构和一些简单的规则直接生成我们想要的初始化数据吗?

这是可以做到的;答案就来自于TS本身提供的编译器相关的API,只要从编译的角度去看待上面的问题,那么解决方案还是“比较轻松”的;

阅读全文 »

前言

vue-cli提供了一个名为preset的功能,即预设,顾名思义就是将vue-cli的一些设置保存在preset文件中,以便快速复用;

而远程preset则拥有更多的扩展性,可以用来定制扩展的脚手架功能,如定制项目模板;

阅读全文 »

前言

我为什么会思考这个问题?这得从一篇演讲稿说起:

前端搞基建|堂主 - 如何推动前端团队的基础设施建设 - 知乎

上文最初大概是在20204、5月份的时候看到的(当时还是在语雀上,不过现在链接已经失效,好在知乎上面还找得到),作者在上述演讲稿中详尽地介绍了其团队在一年多的时间内如何从零到一构建了庞大的前端基础设施体系,以及这些基础设施到底起到了多大的作用;整篇演讲稿看完真是令人恍然大悟,原来前端可以如此高效以及成体系,看完后我真是对该团队拥有的前端基础设施垂涎三尺,然后臆想了一下在如此高效的前端体系中工作应该是一件很幸福的事情。

不过,考虑到文中这种庞大的、成熟的前端基础设施是建立在庞大的前端团队以及超多的前端业务场景的积累下建设而成的,那么小团队怎么办?

img

于是很自然地我就想到了这个问题,也在一直试图寻找这个问题的答案;在经过2020年内大半年的在团队内部的基建实践(比较初级)后,我想也许是时候回答和整理这个问题的思路了

阅读全文 »

前言

以下这几个模块是vue3发布订阅系统和响应式数据的核心组成;事实上vue2也有相应的组成部分,只不过依附在vue实例上,但是vue3把相应的模块独立出来,不再依附于vue实例;

阅读全文 »

前言

注:本文写于2020年较早的时候,只是最近整理发布,因此关于渲染流程的认识比较肤浅,重点关注阻塞策略部分就好了;

阅读全文 »