我将 .nghaml 用于我的模板,并使用以下 gem 进行 Angular 集成:
gem 'angularjs-rails'
gem 'angular-rails-templates'
我的 Rail View 布局是 name.html.haml,在其中使用 image_tag 可以正常工作。在生产中,我可以看到图像。
相比之下,在我的带有 .nghaml 扩展名的 Angular 模板( Assets /模板)中,我不能使用 Rails 助手 image_tag 并且直接引用不起作用
%image(src="assets/sample_image.png")
直接引用在本地工作,但在生产图像上不呈现。
此人 ( Rails Image assets in Angular Directive and template ) 有类似问题,但使用
%img(ng-src='assets/sample_image.png')
在本地工作但不在生产中。并试图使用
image-url
导致未定义方法的错误(就像 image_tag),因为 Rails 助手似乎没有在 .nghaml 扩展中工作。正在工作的图像(带有 image_tag 帮助程序的 Rails View )正在引用预编译的 Assets ,这些 Assets 的名称通过添加 md5-hash(基于第一篇链接文章)而更改,但我在弄清楚如何分辨时遇到了问题nghaml 模板在没有 Rails 辅助方法的情况下调用新的预编译 Assets 。
几个月前我与助手一起遇到了这个问题( Rails App to Angular: HAML + Rails Helpers )并且没有找到解决方案,但直到最近才需要将图像放入 nghaml 模板中,而不是仅仅使用 CSS 创建我需要的内容。
如果我无法弄清楚这一点,我目前正计划将 Angular 模板移回 erb ,但如果有我不知道的替代方案(或解决方案),我很想听听它们。
最佳答案
帖子中提出的解决方案Rails App to Angular: HAML + Rails Helpers将允许您在生成客户端 html 文件时在您的 haml 文件中使用助手(包括 image_tag 助手)。
关于ruby-on-rails - Angular + .nghaml 模板 : Referencing Precompiled Image Assets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25008898/