【发布时间】:2011-12-27 20:30:14
【问题描述】:
我有一个 Rails 控制器,我在其中设置一个实例变量 -
@user_name = "Some Username"
在我的 .slim 模板中,我使用咖啡引擎生成 javascript,并希望从客户端 sie javascript 代码中打印出用户名 -
coffee:
$(document).ready ->
name = "#{@user_name}"
alert name
但这是正在生成的 javascript??
$(document).ready(function() {
var name;
name = "" + this.my_name;
alert(name);
}
如何在我的 CoffeeScript 代码中访问控制器实例变量?
我将其标记为 haml,因为我猜 haml 在使用 CoffeeScript 时会遇到同样的问题。
【问题讨论】:
-
@Thilo 不,他正在尝试注入 Ruby 变量
@user_name。 Ruby 和 CoffeeScript 使用相同的字符串插值语法。 -
我明白了。顺便说一句,变量名怎么从
"#{@user_name}"变成this.my_name? -
因为在coffeescript中,@prop被编译成this.prop
-
stackoverflow.com/questions/17560864/… 类似问题/解决方案
标签: ruby-on-rails ruby-on-rails-3 coffeescript haml slim-lang