Skip to content

开发指南

重要提示:Yumeri框架目前处于快速迭代阶段,本文档中的API可能随时发生变化。请始终以GitHub仓库中的最新代码为准:https://github.com/yumerijs/yumeri

开发环境准备

在开始之前,请先创建一个模板项目,然后使用npm run devyarn dev启动开发模式。

在这种模式下,插件会优先从plugins文件夹下的ts源代码加载。

开发流程概述

Yumeri的开发主要围绕插件系统展开。作为开发者,您可以通过创建和配置插件来扩展Yumeri的功能。以下是开发Yumeri应用的基本流程:

  1. 创建项目:使用Yumeri提供的项目模板或手动设置项目
  2. 开发插件:创建自定义插件或使用现有插件
  3. 配置应用:在config.yml中配置插件和应用设置
  4. 测试应用:在开发环境中测试应用功能
  5. 部署应用:将应用部署到生产环境

核心概念

在开发Yumeri应用时,需要理解以下核心概念:

1. 插件系统

插件是Yumeri的核心组成部分,所有功能都通过插件实现。详细内容请参考插件系统插件基础章节。

2. 指令系统

"指令"的概念在Web系统里面非常模糊。它不像机器人中那样是实时响应的会话,而是在Yumeri当中,若非websocket连接,所有的页面响应都将在指令执行完成后返回。详细内容请参考指令系统章节。

3. 中间件

中间件在Yumeri中用于处理请求和响应,可以在指令执行前后添加自定义逻辑。详细内容请参考中间件章节。

4. 事件监听

Yumeri提供了事件系统,允许插件监听和响应各种事件。详细内容请参考事件监听章节。

开发工具和技巧

TypeScript支持

Yumeri使用TypeScript开发,提供了类型安全和更好的开发体验。建议在开发Yumeri应用时使用TypeScript,以获得更好的代码提示和错误检查。

调试技巧

  1. 开发模式:在开发模式下,Yumeri会自动重新加载修改的代码
  2. TypeScript错误检查:利用TypeScript的类型检查发现潜在问题

性能优化

  1. 懒加载:对于不常用的功能,可以使用懒加载减少初始加载时间
  2. 缓存策略:合理使用缓存减少重复计算和网络请求
  3. 代码分割:将大型应用分割成小块,按需加载

最佳实践

  1. 模块化设计:将功能划分为独立的模块,便于维护和扩展
  2. 清晰的接口:定义清晰的接口,减少模块间的耦合
  3. 错误处理:妥善处理可能出现的错误,提供友好的错误信息
  4. 文档完善:为代码和API提供详细的文档
  5. 测试覆盖:编写单元测试和集成测试,确保代码质量

常见问题解决

插件加载失败

  • 检查插件名称是否正确
  • 确认插件已正确安装
  • 查看控制台错误信息

指令执行错误

  • 检查指令注册是否正确
  • 确认参数类型和数量
  • 查看指令处理函数的错误处理

类型错误

  • 确保TypeScript类型定义正确
  • 使用适当的类型断言
  • 更新到最新的类型定义

警告

本文档正在编辑中,内容可能会随着API的改变而随时调整。请以GitHub仓库中的最新代码为准。