返回介绍

插件开发

发布于 2021-04-24 12:50:43 字数 2242 浏览 1145 评论 0 收藏 0

运行开发服务器

npm install
npm install -g ykit #依赖 ykit 
npm run dev #启动开发服务器

加载插件

在config.json plugins配置项,加入 demo 插件,

{
  "port": "3000",
  "db": {
    "servername": "127.0.0.1",
    "DATABASE": "yapi"
  },
  ...
  "plugins": [{
    "name": "demo",
    "options": {}
  }]
}

初始化目录

可参考 项目vendors/exts 目录下的插件

在 vendors/node_modules 下新建 yapi-plugin-demo 目录和 npm init,最后生成的目录结构如下

yapi-plugin-demo
  client.js  //客户端入口文件
  server.js  //服务端入口文件
  packjson.json //插件依赖管理
  index.js //插件配置文件

index.js 配置说明

server: true // 如果为true,表名该插件需要经过后端服务器加载
client: true // 如果为true,表名该插件需要经过前端编译

server.js

在server.js 需要导出一个 function ,例如: module.exports = function(options){}

options 可在 config.json 配置

绑定钩子

this.bindHook(hookname, listener) //绑定钩子
hookname //钩子名
listener //监听函数,可以是普通函数,也可以是 asyncFunction

如何使用 YApi vendors/server 目录下的模块

可以直接 require vendors 目录下的模块,注意:后端 node 不能使用 import关键字,只能使用 require 例如: require('yapi')

controller 和 model

新增 controller 需要继承 baseController(controller/base.js)

新增 model 需要继承 baseModel(model/base.js)

client.js

绑定钩子(同后端 server.js )

this.bindHook(hookname, listener) //绑定钩子
hookname //钩子名
listener //监听函数,可以是普通函数,也可以是 asyncFunction

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文