我的 Rails 应用程序中有一些页面需要包含一些 javascript,最好是在</body>
标记之前。没有必要在每个页面上都包含这个 javascript,因为大多数人不使用它。我找到了一种方法来完成这项工作,但我认为代码很糟糕。
您将如何做同样的事情,或者您将如何重构现有代码?
查看 gist.github.com 上的简化示例代码: https ://gist.github.com/scottswezey/ffc7bf52041b976b710a
(或参见下面的相同代码:)
application.html.erb(布局):
<!DOCTYPE html>
<html lang="en">
<head>
...
</head>
<body>
...
<script>
$(function() {
<%= yield(:js) %>
});
</script>
</body>
</html>
some_view_file.html.erb(视图):
<%
str = <<END_OF_STRING
$('.modal').modal()
END_OF_STRING
content_for :js do
str.html_safe
end
%>