| 语言 | 格式 | 评分 |
|---|---|---|
中文(简体) | .pdf | 3 |
| 摘要 | ||
ThinkJS 3.0是一款基于Koa 2.x的企业级Node.js开发框架,支持Middleware、Extend和Adapter扩展方式,移除了3.x中的hook和middleware,改用Koa的middleware。框架提供自动编译和更新机制,支持异步处理,通过async/await解决异步问题。文档详细介绍了项目的启动流程、配置方式、路由解析、控制器和模型的使用,以及事务处理和视图渲染等功能。 | ||
| AI总结 | ||
# ThinkJS 3.0 中文文档总结
## 1. 概述
ThinkJS 是一款基于 Node.js 的企业级开发框架,从 3.0 版本开始基于 Koa 2.x 开发,完全兼容 Koa 的 middleware 等插件。框架支持 Extend 和 Adapter 扩展方式,提供高效的开发体验。
## 2. 核心特性
- **扩展性**:支持 Extend 和 Adapter 扩展,便于功能扩展。
- **性能**:基于 Koa 2.x,性能优异,单元测试覆盖程度高。
- **自动编译与更新**:内置自动编译和更新机制,提升开发效率。
- **异步处理**:直接使用 async/await 解决异步问题,不支持 `*yield`。
## 3. 架构调整
- 移除了 2.x 版本的 hook 和 middleware,改为使用 Koa 的 middleware,管理配置文件为 `src/config/Middleware.js`。
- Controller 和 Model 的基类名称调整:
- `think.controller.base` 改为 `think.Controller`
- `think.model.base` 改为 `think.Model`
## 4. 启动流程
- **Master 进程**:
- 加载配置文件,生成 `think.config` 和 `think.logger` 对象。
- 加载 `src/bootstrap/master.js` 文件。
- 根据配置监听文件变化,编译文件到 `app/` 目录。
- 根据配置 fork 对应数量的 Worker 进程,完成后触发 `appReady` 事件。
- **Worker 进程**:
- 加载配置文件,生成 `think.config` 和 `think.logger` 对象。
- 加载 Extend,配置文件为 `src/config/extend.js`。
- 加载项目模块(Controller、Logic、Model、Service)及路由、校验、定时任务等配置。
- 注册 middleware 和定时任务服务。
- 启动服务,触发 `appReady` 事件。
## 5. 基础功能
- **Controller 方法**:
- `controller.json(data)`:以 JSON 格式输出内容。
- `controller.status(status)`:设置状态码,默认为 404。
- `controller.success(data, message)`:操作成功时的格式化输出,等同于 `ctx.success`。
- `controller.fail(errno, errmsg, data)`:操作失败时的格式化输出,等同于 `ctx.fail`。
- **View 支持**:
- 未内置 View 功能,需通过 Extend 和 Adapter 实现。
- 配置 View 扩展:在 `src/config/extend.js` 中添加 `think-view`。
- 配置 View Adapter:在 `src/config/adapter.js` 中添加模板引擎配置,如 `nunjucks`。
## 6. 路由与配置
- 路由解析基于中间件形式,支持灵活的 URL 配置。
- 路由参数配置在 `src/config/Middleware.js` 中完成。
## 7. 升级指南
- **核心变化**:
- 基于 Koa 2.x 构建,兼容 Koa 的所有功能。
- 移除了 2.x 的核心架构,改为使用 Koa 的 middleware。
- 事务处理方式调整,提供 `transaction` 方法简化操作。
- **项目启动**:
- 2.x 自动加载 `src/bootstrap/` 目录下的所有文件,3.0 只加载 `master.js` 和 `worker.js`。
- **配置方式**:
- 2.x 自动加载 `src/config/` 目录下的所有文件,3.0 根据功能加载对应的文件。
## 8. 事务处理
- 提供 `transaction` 方法简化事务操作,支持多个模型的事务处理,通过 `db` 方法复用数据库连接。
## 9. 创建项目
- 执行命令:`thinkjs new [project_name]`,进入目录后运行 `npm install` 和 `npm start`。
- 默认项目结构包含开发环境入口文件、配置文件、模块目录等。
## 10. 总结
ThinkJS 3.0 通过基于 Koa 2.x 的架构设计,提供了高性能、高扩展性的企业级开发框架。通过合理配置和扩展,能够快速构建高效稳定的 Node.js 应用。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
122 页请下载阅读 -
文档评分














ThinkJS 3.0 中文文档