微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – Ruby on Rails查看通过渲染插入js.erb文件

为了包含我在某些页面上只需要的一段javascript,我放了

 = javascript_tag do
   = render "inserts_js_enhanced_element.js.erb"

在我的haml文件中.
现在我在测试中收到警告:

DEPRECATION WARNING: Passing a template handler in the template name is 
deprecated. You  can simply remove the handler name or pass render
:handlers => [:erb] instead.`

但是,当我将线路更改为

   = render "inserts_js_enhanced_element.js", :handlers => [:erb]

无论如何,我得到一个新的警告,说

 DEPRECATION WARNING: Passing the format in the template name is 
 deprecated. Please pass render with :formats => [:js] instead.

如果我确实改变了

 = render "inserts_js_enhanced_element", :handlers => [:erb], :formats => [:js]

它给了我错误

     ActionView::Template::Error:
   Missing partial application/inserts_js_enhanced_element with {:handlers=>[:haml, :builder, :erb, :coffee], :locale=>[:de], :formats=>[:html]}. 

现在格式似乎没有改为:js和处理程序不仅仅是:erb.
我应该如何正确输入JS-ERB?

更新:

js.erb文件具有表单

 <% session_val = determine_session_val_from_config %>
 jQuery(document).ready(function() {
   //JS Code
 }

解决方法:

好:)
我想我自己找到了this SO文章的答案

= render(:partial => 'inserts_js_enhanced_element', :handlers => [:erb], :formats => [:js])

工作,并没有给我折旧警告

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐