开发插件

ThinkJS 2.0 里支持 2 种类型的插件,一种是 Middleware,另一种是 Adapter

创建插件

可以通过下面的命令创建一个插件,插件命令建议使用 think- 打头。

  1. thinkjs plugin think-xxx

执行后,会自动创建 think-xxx 目录,并可以看到类似下面的信息:

  1. create : think-xxx/
  2. create : think-xxx/src
  3. create : think-xxx/src/index.js
  4. create : think-xxx/test
  5. create : think-xxx/test/index.js
  6. create : think-xxx/.eslintrc
  7. create : think-xxx/.npmignore
  8. create : think-xxx/.travis.yml
  9. create : think-xxx/package.json
  10. create : think-xxx/README.md
  11. enter path:
  12. $ cd think-xxx/
  13. install dependencies:
  14. $ npm install
  15. watch compile:
  16. $ npm run watch-compile
  17. run test:
  18. $ npm run test-cov

目录结构

  • src/ 存放源代码,使用 ES6/7 特性开发
  • test/ 单元测试目录
  • .eslintrc eslint 检查配置文件
  • .npmignore npm 发布时忽略的文件
  • .travis.yml travis 持续集成配置文件
  • package.json npm 配置文件
  • README.md 说明文件

    安装依赖

  1. npm install --verbose

开发

代码文件为 src/index.js,默认生成的文件只是一个基本的类输出,没有继承任何类。

如果是 Middleware,需要继承 think.middleware.base 类。如果是 Adapter,需要继承 think.adapter.base 类。

开发过程中,可以在命令行下执行 npm run watch-compile,这样文件修改后就会立即编译。

单元测试

test/index.js 文件书写相关的单元测试,测试框架使用的是 mocha,可以通过下面的命令查看单元测试结果。

  1. npm run test-cov

说明文档

代码开发和单元测试完成后,需要在 README.md 里书写详细的说明文档。

发布

可以通过 npm publish 发布模块到 npm 仓库里(如果之前没发布过,会提示创建帐号和密码)。

发布完成后,可以联系 ThinkJS-Team,经确认无误后,可以添加到官方的插件列表中,并领取相关的奖励。

原文: https://thinkjs.org/zh-cn/doc/2.1/plugin.html