0

可能重复:
如何在 Slim 模板中访问 CoffeeScript 引擎中的实例变量

如何在我的咖啡标签中使用 Ruby 代码?

#{}调用 Ruby 代码是一种纤细的结构,但它在咖啡标签中不起作用,因为在 CoffeeScript 中使用 `#' 开始注释。

coffee:
     window.awesomeIcons.currentUser = #{raw current_user.to_json} #Doesn't work

该怎么办?

4

1 回答 1

2

简而言之 - 这是不可能的(至少不是直接的)。在 Slim 的问题跟踪器上查看这个问题。这是@minad(Slim 的开发者之一)的相关内容:

这是不可能实现的,因为咖啡脚本是在编译时转换的。你只能嵌入普通的javascript。为了避免混淆,我们没有在咖啡过滤器中实现插值。

我建议使用gon gem从 Rails 控制器中公开一个 JavaScript 变量,而不是稍后在 Coffee 过滤器中直接访问。

于 2012-10-07T18:33:43.687 回答