TypeScript 在当下的前端开发工作流中处于重要地位。这不仅表现在语言本身对前端生态的影响,更体现在其语言服务上。通过 TypeScript 的语言服务,开发者可以得到实时类型检查、智能代码提示等助力,让开发过程更加轻松愉快。但是前端领域存在的诸多领域特定语言(DSL)却不完全基于 TypeScript,因此没法直接利用 TypeScript 语言服务的能力。
本次演讲受 Volar 插件的实现原理启发,将介绍借助 TypeScript 语言服务为低代码 DSL —— Amis 提供语言服务的方法,以期为其他 DSL 带来 TypeScript 般丝滑流畅的开发体验以及显著的生产力提升。
演讲提纲:
1. 背景介绍
- DSL 及其在前端的应用现状
- TypeScript 及其语言服务
- 作为低代码 DSL 的 Amis 及其编辑器的朴素实现
2. 方法
- Volar 的效果及工作原理
- Amis场景下基于 TypeScript 语言服务的 DSL 编辑模式
- 新编辑模式的实现和探索
你将获得:
-
了解了以低代码框架 Amis 为例的诸多领域特定语言(DSL)在前端领域的应用
-
了解如何使用 TypeScript 的语言服务为 Amis 增加类型检查、智能提示
-
了解如何使用类似的方法为自己的 DSL 制作语言服务,提升开发体验






