---
lang: zh-CN
---

# 差异说明

本文档暂时只会对新样板新增内容进行说明,其余请查看[旧样板文档](https://h5mota.com/games/template/_docs/#/)。

本指南建立在你已经大致了解 js 的基础语法的基础上。如果还不了解 js 语法可以尝试对指南内容进行模仿,或者查看[人类塔解析](https://h5mota.com/bbs/thread/?tid=1018&p=1)

如果你有能力直接使用源码版样板进行创作,也可以直接 fork 或 clone 2.B 样板[存储库](https://github.com/unanmed/HumanBreak/tree/template-v2.B)。2.B 样板使用了 vite 作为了构建工具,同时使用了 ts 等作为了开发语言。

本文将描述 2.B 样板与 2.10.3 及 2.A 样板的差异。

## 注意事项

对于新样板,由于拥有了近乎完整的类型标注,因此更推荐使用 `VS Code` 进行代码编写,这样你可以获取到完整的类型标注,而由于类型标注的复杂性,样板编辑器完全无法部署,因此样板编辑器不会有任何新版的类型标注。在之后的更新中,样板 API 会进行大幅度的改动,因此每次更新都可能会弃用一部分 API,同时这些 API 会在若干个版本后被彻底删除。因此如果你的代码中使用到了弃用的 API,请尽快更换写法以保证可以向后接档。

## 主要差异

-   开发语言换为 TypeScript,可以享受到完整的类型支持
-   使用全新的 UI 编写方式,速度快,效率高
-   模块化,可以使用 ES6 模块化语法
-   移除插件系统,可以自定义代码目录结构,更加自由
-   优化渲染端(client 端)与数据端(data 端)的通讯,渲染端现在可以直接引用数据端,不过数据端还不能直接引用渲染端

## 差异内容

相比于 2.10.3 及 2.A,有如下改动:

-   [系统说明](./system)
-   [UI 编写](./ui)
-   [UI 系统](./ui-system)
-   [音频系统](./audio)