现代的网页前端技术,基本都是以开发 Web 组件为基础的。写了很多个组件后,就会自然而然想把页面抽象出来。amis 和 lowdefy 就是这类技术,把 Recat 一个组件的状态,事件都对应成 JSON 里一个子节点。
然后为每一个节点添加 JSON Schema Definition,建立节点规范。最后像搭积木一样,把一整套网页搭建起来。
以前也有这种页面的简单抽象,一般都是用于提交表单的配置。可现在随着 MVVM 理念的发展,UI 已经可以和 JSON 内部的数据进行互动了。也就是 JSON 逐渐脱离传统意义的"配置文件",变成了类似虚拟 DOM,数值会和界面产生联动的状态树。
百度开源的主项目地址: https://baidu.gitee.io/amis
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.