本文为我的学习整理所得,但愿对读者有所帮助。javascript
如下概念引用egg.js官方示例html
简单来讲,Service 就是在复杂业务场景下用于作业务逻辑封装的一个抽象层,提供这个抽象有如下几个好处:java
使用场景node
下面咱们经过一个完整的例子,看看怎么使用 Service。git
在app文件夹中建立servie文件夹,并新建good.js
(原则上service层与controller层的文件名对应)。github
const Service = require('egg').Service;
class GoodsService extends Service {
async index() {
return {
id: 789,
name: 'test_hefen',
}
}
}
module.exports = GoodsService;
复制代码
要注意的是GoodsService要以首字母大写的驼峰命名,不然调用时会报错。数据库
回到app/controller/good.js中,咱们对index
方法进行必定的修改浏览器
async index() {
const { ctx } = this;
const res = await ctx.service.goods.index();
ctx.body = res;
}
复制代码
要注意的是await是必须的,不然调用时会出现空对象状况。app
浏览器输入http://localhost:7001/goods
,就能够看到调用结果啦async
goods
这个服务,这里就不重复叙述了
估计要Pass几章节才会有实践项目,这里就看成是唠叨吧
PS:所有的代码仓库:github.com/hejian1993/…,暂时没有分章节,仅供参考。
我是河粉,咱们下一节见
三个月前,一我的关注了我,他娶了一个如花似玉的老婆。 一周前,一我的关注了我,他中了888亿。 今年,关注了个人人都娶了如花似玉的老婆结婚那天还中888亿。 我已开过光,话已经放到这了。