是否有一种方法可以在我的 /public /javascripts目录中的JavaScript文件中执行嵌入式Ruby?

StackOverflow https://stackoverflow.com/questions/2726421

我有一个不断增长的相关JavaScript的表格。目前,这个JavaScript以我的形式生活,这很好,但是它正在越来越大,并且开始不堪重负,使形式很难在表单上工作。

我想将其放在我的 /public /javaScripts目录中的单独文件中,但是许多JavaScript是由嵌入式Ruby生成的。如果我只是将代码放在此处,则将嵌入的红宝石忽略并传递到浏览器。

以与我认为一样,以与我认为一样生成的JavaScript的最佳方法(如果有)是什么?

有帮助吗?

解决方案

您可以为JavaScript创建动态ERB模板,但它们不会进入公共/JavaScripts目录。

我建议您将JavaScript移至部分。创建一个名为_form_js.html.erb的文件,然后将脚本标签的内容放在此处。然后<%=渲染:partial =>'Form_js'%>从您的视图中。

附带说明,您最好使用完全静态的JavaScript来通过其类别/ID识别表单的元素并对此做出反应,而不是为每个元素使用自定义JavaScript。

其他提示

您可以创建RJS模板并将JavaScript代码分组在RJS文件中。参考: http://www.codyfauser.com/2005/11/20/rails-rjs-templates

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top