egg.js是什么
- 阿里的开源项目
- egg.js为企业级框架和应用而生
- 约定优于配置, 按照一套同一的约定进行开发
- 基于Koa开发, 性能优异
有几个关键词, 企业级框架、约定优于配置、基于Koa
说白了就是对Koa的二次封装, 基于约定优于配置的编程思想, 适合于大型node web项目
让我们搭建个项目看看吧
- 创建项目
mkdir egg-example && cd egg-example
cnpm init egg --type=simple
cnpm i
- 启动项目
npm run dev
[egg-ts-helper] create typings\app\controller\index.d.ts (5ms)
[egg-ts-helper] create typings\config\index.d.ts (15ms)
[egg-ts-helper] create typings\config\plugin.d.ts (4ms)
[egg-ts-helper] create typings\app\index.d.ts (1ms)
2019-08-02 15:10:26,364 INFO 8560 [master] node version v10.16.0
2019-08-02 15:10:26,366 INFO 8560 [master] egg version 2.23.0
2019-08-02 15:10:27,583 INFO 8560 [master] agent_worker#1:6892 started (1213ms)
2019-08-02 15:10:28,887 INFO 8560 [master] egg started on http://127.0.0.1:7001 (2521ms)
- 访问 http://127.0.0.1:7001
hi, egg
接下来我们看一看项目的目录结构
egg-example
├── package.json
├── app
| ├── router.js (配置路由规则)
│ ├── controller (控制器层)
│ | └── home.js
│ ├── service (业务逻辑层)
│ | └── user.js
│ ├── middleware (中间件)
│ | └── auth.js
│ ├── schedule (定时任务)
│ | └── my_task.js
│ └── extend (框架扩展)
│ ├── helper.js (可选)
│ ├── request.js (可选)
│ ├── response.js (可选)
│ ├── context.js (可选)
│ ├── application.js (可选)
│ └── agent.js (可选)
├── config
| ├── plugin.js (配置需要加载的插件)
| ├── config.default.js (编写配置文件)
└── test (单元测试)
├── middleware
| └── response_time.test.js
└── controller
└── home.test.js
是不是看到这么多目录有点蒙了, 不用担心, 接下来的文章中上面的每个知识点我们都会详细的去聊
网友评论