We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent fbda252 commit a230c65Copy full SHA for a230c65
content/docs/Hydro/dev/typescript.md
@@ -2,11 +2,22 @@
2
title: 使用 TypeScript 编写插件
3
---
4
5
-前置条件:NodeJS>=18
6
-此教程将以编写剪贴板插件为例进行说明。
+## Step0 为什么使用插件?
+
7
+如果您参与过其他工程项目的开发,经常会遇到以下的痛点:
8
9
+- 若修改前端源代码,需要重新编译打包前端,编译通常消耗大量的内存与时间,且编译完成后需要重启服务,用户侧资源缓存也会全部失效;
10
+- 修改代码后,尝试更新系统时,自己的修改被新版本覆盖,需要手动合并(或是直接丢失了更改),极大幅度增加维护成本;
11
+- 第三方社区出现的大量修改分支无法直接按需求进行组合/拼装,或是功能间存在冲突;
12
13
+基于以上痛点,Hydro 开创性的使用了插件系统,提供了一套完整的开发 API 供开发者使用,开发者基于提供的较稳定的 API 进行功能的编写,而无需过多关心内部实现,在多个版本间达到一致性,同时提供热重载功能,提升开发效率。
14
15
+此教程将以编写剪贴板插件为例进行插件开发的说明。
16
17
## Step1 初始化项目
18
19
+前置条件:NodeJS>=22
20
21
使用 `hydrooj addon create` 快速在 `/root/addon` 下初始化一个插件或是在一个空文件夹中运行 `yarn init` 并按照提示填写相关信息。
22
23
```sh
0 commit comments