我有下一个 js.erb 文件:
<% if Rails.env == 'production' %>
<% if request.env['SERVER_NAME'] == 'example.com' %>
$(function () {
...
...
});
<% end %>
<% end %>
如何在没有 Ruby 的情况下转换 JavaScript 中的第二行?
我有下一个 js.erb 文件:
<% if Rails.env == 'production' %>
<% if request.env['SERVER_NAME'] == 'example.com' %>
$(function () {
...
...
});
<% end %>
<% end %>
如何在没有 Ruby 的情况下转换 JavaScript 中的第二行?
将 输出SERVER_NAME
为字符串,并在客户端进行比较:
<% if Rails.env == 'production' %>
if ('<%= request.env['SERVER_NAME'] %>' == 'example.com') {
$(function () {
...
...
});
}
<% end %>
如果第二行可以“仅包含 javascript”(我强烈质疑这一点),那么您可以将 Ruby 位移到变量中:
var serverName = '<%= request.env['SERVER_NAME'] %>';
<% if Rails.env == 'production' %>
if (serverName == 'example.com') {
$(function () {
...
...
});
}
<% end %>
我找到了答案:
<% if Rails.env == 'production' %>
if (window.location.hostname == 'example.com') {
$(function () {
...
...
});
}
<% end %>