Egg 目錄結(jié)構(gòu)

2020-02-06 10:55 更新

在快速入門中,大家對框架應(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。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號