在快速入門中,大家對框架應(yīng)該有了初步的印象,接下來我們簡單了解下目錄約定規(guī)范。
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 路由規(guī)則,具體參見 Router。
- app/controller/** 用于解析用戶的輸入,處理后返回相應(yīng)的結(jié)果,具體參見 Controller。
- app/service/** 用于編寫業(yè)務(wù)邏輯層,可選,建議使用,具體參見 Service。
- app/middleware/** 用于編寫中間件,可選,具體參見 Middleware。
- app/public/** 用于放置靜態(tài)資源,可選,具體參見內(nèi)置插件 egg-static。
- app/extend/** 用于框架的擴(kuò)展,可選,具體參見框架擴(kuò)展。
- config/config.{env}.js 用于編寫配置文件,具體參見配置。
- config/plugin.js 用于配置需要加載的插件,具體參見插件。
- test/** 用于單元測試,具體參見單元測試。
- app.js 和 agent.js 用于自定義啟動時的初始化工作,可選,具體參見啟動自定義。關(guān)于agent.js的作用參見Agent機(jī)制。
由內(nèi)置插件約定的目錄:
- app/public/** 用于放置靜態(tài)資源,可選,具體參見內(nèi)置插件 egg-static。
- app/schedule/** 用于定時任務(wù),可選,具體參見定時任務(wù)。
若需自定義自己的目錄規(guī)范,參見 Loader API
- app/view/** 用于放置模板文件,可選,由模板插件約定,具體參見模板渲染。
- app/model/** 用于放置領(lǐng)域模型,可選,由領(lǐng)域類相關(guān)插件約定,如 egg-sequelize。
更多建議: