共计 1271 个字符,预计需要花费 4 分钟才能阅读完成。
背景
随着互联网的疾速倒退,开发软件越来越考究效率,无论是各种跨端框架如:electron
uni-app
,还是近期比拟炽热服务端的serverless
,都是随同着这个趋势而生。
疾速开发后盾
事实上后盾在开发中存在大量的反复的工作,有些程序员甚至自嘲是 crud
(增删改查) 开发者。cool 团队原先在开发软件的时候也碰到了相似的问题。刚好随同着阿里巴巴团 midway2.0 的公布。它是一个既能够开发一般利用,又能够将利用公布打包公布部署为 serverless。咱们在此基础上封装了一个疾速开发后盾的框架 cool-admin。
疾速开发
定义一个表
/**
* 商品
*/
@EntityModel('demo_app_goods')
export class DemoAppGoodsEntity extends BaseEntity {@Column({ comment: '题目'})
title: string;
@Column({comment: '图片'})
pic: string;
@Column({comment: '价格', type: 'decimal', precision: 5, scale: 2})
price: number;
}
编写接口
import {Provide} from '@midwayjs/decorator';
import {CoolController, BaseController} from 'midwayjs-cool-core';
import {DemoAppGoodsEntity} from '../../entity/goods';
/**
* 商品
*/
@Provide()
@CoolController({api: ['add', 'delete', 'update', 'info', 'list', 'page'],
entity: DemoAppGoodsEntity
})
export class DemoAppGoodsController extends BaseController {
/**
* 其余接口
*/
@Get('/other')
async other() {return this.ok('hello, cool-admin!!!');
}
}
这样咱们就实现了 6 个接口的编写,对应的接口如下:
POST /app/demo/goods/add
新增POST /app/demo/goods/delete
删除POST /app/demo/goods/update
更新GET /app/demo/goods/info
单个信息POST /app/demo/goods/list
列表信息POST /app/demo/goods/page
分页查问(蕴含含糊查问、字段全匹配等)
开源收费
为了分享咱们的成绩,咱们把它开源了,让宽广开发者也能疾速开发,分心业务。
- 后端
https://github.com/cool-team-…
https://gitee.com/cool-team-o…
- 前端
https://github.com/cool-team-…
https://gitee.com/cool-team-o…
正文完