2012-09-02 53 views
2

我試圖找出集成我的AngularJS和Play框架項目以便將它們分別封裝在一起作爲前端和後端的最佳方式。AngularJS和Playframework集成

我發現這個blog post談論完全相同的問題,但我的是略有不同,因爲我使用的播放框架1.2.5,而不是2.0,因此,我無法控制與資產文件夾:

GET /assets/*file controllers.Assets.at(path="/public", file)

沒有明顯的/有效的區別,因爲這傢伙是暴露了很多文件並不真正是他的應用程序的一部分,在Java腳本的/公共不同的文件/文件,圖像/和樣式表/ 。這就是我想要避免的,將這些文件公開到生產環境中,或者在部署到生產環境之前必須將其刪除。

值得一提的是,javascript//,images /和stylesheets /中的/ public不同的文件是AngularJS文件/文件夾,主要與測試有關。 AngularJS內部使用Jasmine來測試(這是我讀過的),所以這些文件是Jasmine文件,僞裝成AngularJS文件。

回答

1

從我使用Play 1.2.x開始已經有一段時間了,但是您應該可以通過條件將它們隱藏在生產路線文件中。喜歡的東西:

%{ if(Play.isProd() }% 

    GET  /your-path-#1   404 
    GET  /your-path-#2   404 

%{ } else { }% 
    GET  /your-path-#1   real path to file 
%{ } }% 

被警告說,語法很可能是錯的,這是一個很長的時間,但是這想法:)