2013-10-11 25 views
4

我正在使用Angular驅動的前端處理Rails應用程序。我想將我的Rails資產文件夾中的圖像包含到僅在特定上下文中使用ng-switch指令顯示的視圖中。我嘗試了幾個解決方案,例如將<img>標籤的src中的所有其他(Rails-served)圖像的文件路徑鍵入。我也嘗試添加一個ERB後綴的文件的CoffeeScript拿着角控制器,然後這樣做:使用AngularJS顯示來自Rails Asset Pipeline的圖像的最佳方式?

$scope.logoSrc = '<%= asset_path("images/logo_grey.png") %>' 

,並使用圖像標籤的ng-src指令,但產生了404

快樂發佈更多的我的代碼,如果它有幫助。預先感謝任何幫助!

+0

您的asset_path解決方案應該很好,那麼結果js是什麼? – apneadiving

+0

這有什麼運氣? – zeantsoi

+0

@zeantsoi不,不幸。 – jjl2

回答

0

嘗試以下操作:

$scope.logoSrc = '<%= asset_path("logo_grey.png") %>' 

根據Rails的指南的section 2.3.3

如果添加ERB擴展到JavaScript資產,使它的東西,如application.js中。 erb,那麼你可以在你的JavaScript代碼中使用asset_path助手:

$('#logo').attr({ 
    src: "<%= asset_path('logo.png') %>" 
}); 
+0

不幸的是,這仍然產生'ActionController :: RoutingError(沒有路由匹配[GET]「/assets/lapel-l-logo-dark-grey.png」)' – jjl2

相關問題