文档

构建与发布

当您的扩展开发和测试完成后,就可以将其发布给其他用户了。发布过程主要针对公开扩展,并通过 GitHub 进行管理。

扩展代码建议

Sliprail 扩展推荐使用纯 JavaScript 或 ES 模块(.js 或 .mjs 文件)开发。使用纯 JavaScript 的优势在于:

  • 无需构建步骤:纯 JavaScript 代码可以直接运行,简化了开发流程
  • 更快的开发迭代:修改代码后无需重新编译
  • 更简单的维护:减少了构建工具和配置的复杂性

如果您的扩展使用了 TypeScript 或其他需要编译的语言,可以根据自己的需求配置相应的构建流程。

避免阻塞主线程

重要提醒:扩展代码运行在 Sliprail 的主线程中,请确保您的扩展代码不会长时间阻塞主线程。

  • 避免同步阻塞操作:不要使用同步文件操作、长时间循环或同步网络请求
  • 使用异步操作:优先使用 async/await 或 Promise 处理 I/O 操作
  • 分批处理:对于大量数据处理,考虑分批执行或使用 setImmediate/setTimeout 分片处理
  • 性能优化:避免在主线程中进行大量计算,必要时使用 Worker 线程

阻塞主线程可能导致 Sliprail 界面卡顿、响应缓慢,甚至影响用户体验。

依赖管理

无外部依赖

如果您的扩展仅使用 Node.js 内置模块和 @sliprail/sdk 提供的 API,那么无需任何额外的构建或打包步骤。

使用第三方依赖

如果您的扩展依赖第三方 npm 包,需要注意:

  • Sliprail 不会自动为扩展安装依赖
  • 您需要自行配置打包工具(如 webpack、esbuild、rollup 等)
  • 将所有依赖打包到最终的 JavaScript 或 ES 模块文件中
  • 确保打包后的文件可以独立运行,无需额外的 node_modules 目录

发布新版本时,请确保推送到 GitHub 的代码包含所有打包后的文件。

发布公开扩展

发布公开扩展的过程非常简单:

  1. 准备代码:确保所有必需的文件(manifest.json、扩展代码、图标等)都已准备好

  2. 推送到 GitHub:将您的代码推送到注册扩展时指定的 GitHub 仓库

  3. 自动部署:Sliprail 会定期检查已注册的扩展仓库。当检测到更新时,会自动拉取最新版本

用户随后就可以在 Sliprail 扩展管理中更新到您的扩展的最新版本。

发布私有扩展

私有扩展无需发布到任何平台。它们通过"加载本地扩展"功能直接在您的机器上运行。您只需确保代码保存在本地即可。