我期待構建一個可以以兩種不同方式運行的Angular2應用程序 - 無論是在電子內部還是通過CLI。基本上應用程序的底層組件是一組服務。在應用程序的Electron版本中,這些服務將通過一組交互式組件公開,但是,對於CLI版本,它們將可以使用節點進行訪問。在瀏覽器外使用Angular2
此刻,我在研究/的PoC階段 - 試圖確認這是可能的,2個問題已經出現:
- 角是否支持其他平臺?看來引導方法只適用於瀏覽器。
- 似乎Angular2不支持服務內的注入服務,除非它們都在組件/應用程序級別定義(即服務沒有注入器)。我不想在應用程序級別爲我的所有服務添加所有依賴關係 - 事實上,這不起作用,因爲我需要非單身人員。有沒有人爲此制定瞭解決方法?
也許Angular2不適合這個。
您實際上是想構建一個沒有圖形用戶界面的Angular CLI應用程序嗎? Angular的構建是爲了能夠在沒有GUI的情況下運行(https://github.com/angular/universal),但這只是爲了特定目的(搜索引擎優化和加載後的更快的初始視圖)。基本上你只需要提供一個自定義渲染器,以便能夠在節點上運行它並使用替代輸入/輸出而不是瀏覽器。 –
感謝Günter - 感謝您花時間。 「其他平臺」是指命令行界面(節點),而不是瀏覽器。因此,我認爲我不能使用組件,因爲沒有HTML表示。相反,我認爲我會創建服務(標準JS類),這些服務可以通過組件(In electron)或通過CLI觸發。我喜歡使用工廠創建類的非單例版本的方法,但是,在理想的世界中,我可以指定服務提供者 - 對我來說,它絕對是一種限制。 – user2294382
其實你可以使用組件,但如前所述,你需要一個自定義的渲染器。無法指定提供商的服務是一個限制。還有其他人。請認爲Angular2是一個完全新的框架,與它的前身很少有相似之處,而Angular2仍然是預發佈的。這意味着當高優先級功能被解決時會有改進。 –