Node - Egg.js 框架從入門到放棄系列(2)- 路由Router

本文爲我的學習整理所得,但願對讀者有所幫助。html

路由描述

Router 主要用來描述請求 URL 和具體承擔執行動做的 Controller 的對應關係, 框架約定了 app/router.js文件用於統一全部路由規則。node

經過統一的配置,咱們能夠避免路由規則邏輯散落在多個地方,從而出現未知的衝突,集中在一塊兒咱們能夠更方便的來查看全局的路由規則。git

路由疑問

在router.js 文件中,可能小夥伴會有疑問:咱們通常在home.js裏面寫業務業務邏輯,可是在router.js裏並無引入home.js,那麼egg框架怎麼知道咱們的業務邏輯寫在哪裏呢? github

在這裏插入圖片描述
把鼠標放在app上,能夠看到app的類型爲 Egg.Application,這個全局對象在項目在中只會實例化一次,它集成了 路由router控制器controller 。 這樣在實際項目中,咱們就能夠把更多的精力放在業務邏輯開發中。 更多擴展細則請看下文官方擴展。

官方擴展

egg 官方文檔之:框架擴展(Application、Context、Request、Response、Helper的訪問方式及擴展)瀏覽器

一塊兒作項目

app/controller中新建goods.js app

在這裏插入圖片描述
goods.js文件中,結構與 Home.js相仿
在這裏插入圖片描述
值得注意的是, ctx是上下文,每次請求的時候框架都會實例化一個context,用來存放請求的一些信息; 若是咱們須要向瀏覽器發送信息,就須要使用 ctx的body屬性,這個值能夠爲obj或字符串。 緊接着咱們修改一下 router.js裏面的代碼,將 goods路由引入
在這裏插入圖片描述
瀏覽器輸入 http://localhost:7001/goods,即可看到操做成功
在這裏插入圖片描述
PS:所有的代碼倉庫: github.com/hejian1993/…,暫時沒有分章節,僅供參考。

我是河粉,咱們下一節見 三個月前,一我的關注了我,他娶了一個如花似玉的老婆。框架

一週前,一我的關注了我,他中了888億。 今年,關注了個人人都娶了如花似玉的老婆結婚那天還中888億。 我已開過光,話已經放到這了。學習

相關文章
相關標籤/搜索