Rails 3.1在JavaScript文件中插入ruby代码
作者:互联网
我正在使用Rails 3.2.12.
我想在我的资产JavaScript文件中插入一个ruby代码:
function trim(string) {
return string.replace(/(^\s+)|(\s+$)/g, "");
}
function <%= controller_name %>() {
...
}
我怎样才能做到这一点?
提前致谢.
解决方法:
如果要传递的变量是与请求无关的 – 那么只需给它命名* .js.erb.
对于特定于请求的数据(如示例中的控制器名称),这是不可能的. Javascript文件独立于应用程序请求加载,通常它们由应用程序服务器(apache,nginx)作为静态资产提供.因此,如果您想要一些依赖于请求的自定义脚本,请将其放在视图模板(.html.erb)中.
你也可以通过应用程序代理请求你的js文件(在routes.rb中定义它的路由),但这不会被认为是好的代码.
标签:javascript,ruby-on-rails,asset-pipeline 来源: https://codeday.me/bug/20190716/1478629.html