nest.js 依賴注入

 按照nest官方文檔,使用nest CLI創建controller service module

$ nest g controller products
$ nest g service products
$ nest g module products

 框架會自動生成依賴關係,在app.module.ts中

上圖中註釋掉掉//controllers, //providers 就是框架自動生成的,帶來了很多麻煩。 編譯不通過,如下圖。

這個依賴注入的問題困擾了幾個小時,最終還是踏踏實實一句一句的看官方文檔。https://docs.nestjs.com/modules

所以,一個Module就是一塊空間,如果希望把自己的Service給其他Module使用,就exports出去。問題是nest爲什麼要在AppModule中自動生成其他Module的controllers和providers呢???應該是希望這些Modules可以直接相互注入吧,省去其他每個Module的imports,但是文檔也沒說明白呀!總之註釋掉了AppModule中的controllers和providers後編譯通過了。

 

還沒有研究清楚,爲什麼上圖的寫法,必須匹配下圖的寫法 ?

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章