Egg.js 是《阿里旗下产品》基于 Node.js 和 Koa 是一个 Nodejs 的企业级应用开发框架。 可以帮助发团队和开发人员降低开发和维护成本。 Egg.js在多数公司已经有很广泛的应用,而且对于其中间件的使用也有很多,话不多说,我们先来看看eggjs由哪几部分组成
egg.js的组成部分
1、controller 抽取route中业务逻辑至controller
2、middleware 应用中间件
3、model 创建数据库
4、public 放静态的html文件
5、service 异步请求地方(数据库或者服务端接口)
6、router 所有路由,都要放在routes文件夹中
7、config 配置中间件
总结:通过对不同文件夹作用的分析,我们可以得出egg.js执行顺序:
Router -> Controller -> Service -> Model
egg.js常用的第三方插件
1、数据库连接插件
egg-mongoose
www.npmjs.com/package/egg…
2、接口自动生成插件
egg-swagger-doc-feat
www.npmjs.com/package/egg…
3、用户密码加密插件
egg-bcrypt
www.npmjs.com/package/egg…
4、用户鉴权认证插件
egg-jwt
www.npmjs.com/package/egg…
5、用户传入参数校验插件
egg-validate
www.npmjs.com/package/egg…
6、传入参数的校验插件
parameter(校验传入参数包含body以及query)
www.npmjs.com/package/par…
egg.js实践
1、config引入第三方插件在config.default.js
- 端口以及域名的修改
- swagger-doc引入
- mongoose引入
- jwt引入
*** 至于每个引入对应的参数对应的意义,可以通过第二点不同插件的url路劲进行学习 ***
2、controller使用自动生成swagger接口
通过请求接口前面的注释内容,对于每个属性的定义进行自动创建swagger接口
3、model里面创建集合
通过mongoose进行以对象的形式创建集合,以及对于集合里面的每个字段进行属性设置
4、service里面请求数据库内容
注意:ctx.genHash是对于用的密码进行加密操作
简单的eggjs简单的引用就可以很好的在项目中使用
附:更为详细的eggjs用法
eggjs.org/zh-cn/