chumi
v1.1.13
Published
基于koa,在运行时,提供Controller、Route、Parameter、Service等功能的注解的中间件框架,可以在任何支持koa中间件的项目或者框架里面使用
Downloads
11
Maintainers
Readme
Chumi ·
基于koa,在运行时,提供Controller、Route、Parameter、Service等功能的注解的中间件框架,可以在任何支持koa中间件的项目或者框架里面使用
示例
🤟 欢迎提供更多的示例...
架构图
Apis
import chumi, {
Controller,
Service,
Get,
Post,
Delete,
Put,
Param,
Query,
Body,
Header,
Files,
ApiTags,
loadService,
loadController
} from 'chumi';
星链
直接拷贝如下体验,也可以克隆当前项目,安装依赖,执行运行
yarn tsx sample/chumi-chain
import Koa, { Context } from 'koa';
import chumi, { Controller, Get, Service, loadController, loadService } from 'chumi';
const app = new Koa();
// Service类
@Service
class S1 {
ctx: Context;
chain = loadController(Chain);
s1 = loadService(S1);
}
// Controller类
@Controller()
class Chain {
ctx: Context;
chain = loadController(Chain);
s1 = loadService(S1);
async result() {
return this.ctx.path;
}
@Get('/')
async index() {
// 支持无限调用下去,不管是在service,还是controller,都是支持的
return this.chain.chain.s1.s1.chain.chain.s1.s1.chain.chain.s1.s1.chain.chain.result();
}
}
app.use(chumi([Chain]));
app.listen(9000);