如何使用javascript_include_tag从供应商/资产/javascript添加特定于控制器的javascr

How to add a controller-specific javascript from vendor/assets/javascripts using javascript_include_tag?

本文关键字:javascript 控制器 javascr 添加 资产 tag include 供应商 何使用      更新时间:2023-09-26

我在rails项目中有一个视图new.html.slim

我尝试了以下操作:

= javascript('app/vendor/assets/javascripts/handelbars.runtime.js')
= javascript('../../../vendor/assets/javascripts/handelbars.runtime.js')
= javascript('./vendor/assets/javascripts/handelbars.runtime.js')

但仍然404 Not Found handelbars.runtime.js

所有vendor/assets/javascripts/图书馆的正确路径是什么?

我不会在申请中包含handelbars.runtime.js.js

更新:

如果我查看浏览器中的路径:

http://localhost:3000/javascripts/vendor/assets/javascripts/handelbars.runtime.js

但我也得到:

Routing Error
No route matches [GET] "/javascripts/vendor/assets/javascripts/handelbars.runtime.js"

也只是为了测试:

Routing Error
No route matches [GET] "/vendor/assets/javascripts/handelbars.runtime.js"  

http://api.rubyonrails.org/classes/ActionView/Helpers/AssetTagHelper.html#method-i-javascript_include_tag

= javascript_include_tag "handlebars.runtime"

如果您将其放在视图的末尾,则此时它将包含在文档中。如果您希望将其包含在头部或底部,请使用yield <symbol>功能来实现这一点。例如,如果我的布局中有<%= yield :head %>,我可以将上面的包含标签调用放入content_for:

= content_for :head do
    = javascript_include_tag "handlebars.runtime"