编程语言
首页 > 编程语言> > Rails 3.1在JavaScript文件中插入ruby代码

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