一,Egg概述
Egg使用一个基于节点,在Koa框架基础上开发出来的一个MVC框架。
MVC概述
二,创建egg项目
对于刚接触的同学来说,可能会感觉很难,但创建一个项目是非常简单的,跟下面一步一步做吧!
npm i egg-init -g egg-init Hello --type=simple npm install npm run dev
三,项目目录结构讲解
创建好项目的同学可以发现多了好多文件夹,具体用来干什么的呢,请看下面
egg-project(项目名)
├── package.json
├── app.js (可选)
├── agent.js (可选)
├── app
| ├── router.js
│ ├── controller
│ | └── home.js
│ ├── service (可选)
│ | └── user.js
│ ├── middleware (可选)
│ | └── response_time.js
│ ├── schedule (可选)
│ | └── my_task.js
│ ├── public (可选)
│ | └── reset.css
│ ├── view (可选)
│ | └── home.tpl
│ └── extend (可选)
│ ├── helper.js (可选)
│ ├── request.js (可选)
│ ├── response.js (可选)
│ ├── context.js (可选)
│ ├── application.js (可选)
│ └── agent.js (可选)
├── config
| ├── plugin.js
| ├── config.default.js
│ ├── config.prod.js
| ├── config.test.js (可选)
| ├── config.local.js (可选)
| └── config.unittest.js (可选)
└── test
├── middleware
| └── response_time.test.js
└── controller
└── home.test.js
app/router.js用于配置URL路由规则的
app/controller/解析用户的输入,处理后返回相应的结果
app/service/用于编写业务逻辑层,可选,建议使用
app/middleware/
app/public/用于编写中间件用于放置静态资源
app/extend/用于框架的扩展
config/config.{env}.js用于编写配置文件
config/plugin.js用于配置需要加载的插件
测试/用于单元测试
app.js和agent.js用于自定义启动时的初始化工作,可选
app/public/用于放置静态资源进行
app/schedule/定时任务
app/view/用于放置模板文件,由模板插件约定,
app/model/用于放置领域模型,由领域类相关插件约定,如egg-sequelize。
网友评论