技术文章
- 01
在 Unity UITK 里,我为什么给自己造了一套模板系统
写编辑器 UI 时,我总想把 Web 世界里那些喜欢的设计带回来:模板编译、响应式、结构指令与更明确的生命周期。这是一个带着个人爱好和实验性质的项目,也是本系列的前言。
- 02
Hello World:第一个模板组件
一个最小模板组件的结构与样式:TemplateElement 负责接住同名 UXML,宿主窗口负责挂载实例;同名 USS 则为 Hello World 提供明确的居中布局。
- 03
继承链:模板组件由哪四层组成
如果只看模板装配的基础继承链,一个模板组件至少落在四层之上:VisualElement(引擎原生元素)、ContextElement(上下文注入)、RuntimeElement(挂载生命周期与响应式)、TemplateElement(模板装配)。每层加什么、为什么单独一层。
- 04
组件配方:一个类如何带上它的 UXML 与 USS 资产
Vue 单文件组件把 template / script / style 合成一个组件;我们的组件则是一个 C# 类,带上可选的 UXML(模板)与 USS(样式)资产。只要组件至少落到 TemplateElement 这层,根组件被实例化时,基类构造器就会自动装配配对资产;模板里声明的子组件则在 CloneTree 过程中递归装配——类型是唯一接驳点,路径查生成期索引,缓存带时间戳失效。以及为什么这样设计。
- 05
嵌套组件:父模板里如何声明子组件
父模板里开始出现子组件标签之后,模板装配就不再停在根组件,而是沿着组件树继续向下展开。
- 06
模板 token 规格:这套 authoring 语言要支持什么
实现拆解前先立规格:这套模板语言的 token 全集——隐式文本、{{ }} 插值、属性通道(bind-*/on-*/v-model)、结构指令(v-if 族/v-show/v-for/bind-key)、寻址与投影(ref/v-slot/tpl:Slot)。每个 token 的形态、契约与归属管线。
- 07
token 开始生效:先看几类最小结果
先看一个 token 版的 hello world。文本插值、事件和值变化、条件分支,都是从这一页最小示例里开始长出来的。