打脸
继昨天早上发了文章《我感觉我要被离职了》之后,昨天我把剩下的联动也搞定了。过程很曲折,而且可以很负责任地告诉大家,我被自己打脸了。
昨天按照之前的思路,我确实实现了json2Html的联动功能(将联动逻辑封装成自定义hook,传入props,再将过滤好的newProps返回给组件)。
但是很鸡肋的一件事就是,我必须在我所有组件里都引入这个hook。这让我很不爽,尤其是想到牵扯联动的可能不仅仅是form组件,常规组件也是可能的,所以我毅然决然地改变了这个流程。
是的,优化后的流程将会更加的纯粹,像渲染引擎一样,包揽所有的通用逻辑,在此致敬渲染引擎开发的伙伴,大佬果然是大佬。
最初的想法是json2Html设计成纯函数,这样方便理解维护。但如果设计成组件貌似更合适,所以改名为Json2Html了。后来想想,也对,一个页面的渲染就是一个页面组件,组件库可以理解为各种子组件,而Json2Html就是主组件。
效果
配合之前的《【一抹骚】预览器》,来看看效果。【没有找到合适的录屏软件,就手机凑活了,大家将就下,如果有合适的软件推荐,请私聊我,谢谢。】
如图所示,一个json + 一个Json2Html = 一个页面。组件库支持任何第三方组件,像大家常用的antd,zarm等,当然也支持自定义的。所以还要前端干啥?后端管理好数据,进行拼图即可。等到后续把低代码平台做出来,产品经理拼图即可。凉凉,彻底凉凉。。。
感受
一顿猛如虎的操作之后,感觉自己就是补了下临门一脚。过程中的痛点,难点,其实都是由前面的伙伴默默地扛下了。果然,想出新花样,还得是站在巨人的肩膀上。
愿每个伙伴,不负韶华,敢于思考,勇于实践。