20|如何仅通过元素间的相对位置来生成有弹性可维护的UI代码?
陈旭
你好,我是陈旭。
这一讲我来给出一种生成页面布局代码的方法,继续完成第 19 讲《如何使用平民技术实现 UX 设计稿转代码?》中未能完成的内容讲解。在这讲中,我们通过组件属性识别、层次结构推断和弹性推断等算法,从 UX 设计稿中识别出了足够多的信息,足以用于生成页面的静态布局代码了。现在各种素材俱备,只欠一股东风将这些素材转为代码。
在第 07 讲中,我介绍了结构化代码生成法,这是一种用于生成 TypeScript 代码的方法,其中也涉及到了 HTML 布局代码的生成方法,那么当时给出的方法与今天这讲的方法有啥异同呢?又有啥关系呢?你可以快速回顾一下,再来思考这个问题。
第 07 讲给出的生成代码的方法,是专注于处理单个组件本身的代码的生成,无法用于处理界面上多个组件之间的关系。界面上多个组件之间的关系,其实就是界面的布局。相对地,今天这讲我们专注于处理组件之间的关系(界面布局),不会涉及到单个组件的代码生成的细节。所以从这个角度来看,这讲的内容是对第 07 讲内容的扩充,两讲之间是相辅相成的关系。
基础概念
下图这个大屏应用,界面的元素很多,看起来稍微有点复杂,有图形、表格、文本、图标。
图片来自https://zhuanlan.zhihu.com/p/32554417
我们需要对实际界面做一点抽象,保留住重要的信息,隐藏掉不相干的干扰细节。组件化,是一种非常常见的界面抽象方法,这个方法贯穿了我们的整个专栏。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
文章介绍了一种名为切蛋糕法的布局生成算法,通过组件间的相对位置来生成有弹性可维护的UI代码。作者首先介绍了组件化的概念,强调了组件是界面的最小单元,不可拆分。然后,作者提出了边和组的概念,通过这些概念,引入了切蛋糕法来生成页面布局代码。切蛋糕法是一种逻辑严谨的指令式方法,通过确定切的方向,切分界面为多个组,然后递归处理每个组,直至无法切分为止,生成页面布局代码。文章还介绍了实现弹性界面的原则和技术,以及如何利用flex布局来实现这些原则。切蛋糕法不仅可以用在D2C自动生成代码,还可以用在低代码布局编辑器的代码生成上。文章内容深入浅出,通过切蛋糕的类比生动形象地解释了生成页面布局代码的方法,为读者提供了一种新的思路和工具。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《说透低代码》,新⼈⾸单¥59
《说透低代码》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(3)
- 最新
- 精选
- ifelse学习打卡2023-04-08归属地:浙江1
- Lei Yang老师您好,如何评价百度amis 前端低代码框架,通过 JSON 配置就能生成各种页面?2023-07-07归属地:新加坡
- sheeeeep老师你好,在第12讲中提到的“在不配置服务端 CORS 策略的前提下,巧妙地“骗”过浏览器,绕过跨域限制,做到在浏览器中可以跨域请求任何服务器数据的效果”会放在动态更新部分讲解,这个内容什么时候会有呢2023-05-24归属地:浙江
收起评论