我是js的新手,并开始在rails中使用它。我想检查传递了什么变量值。我在互联网上浏览时发现,在Firefox中必须使用console.log(var_name);' and it gets displayed in console window in
浏览器窗口`( ctrl + shift + j )。但是,如果选中,则不会显示任何内容。下面是我的代码:
customer.js.erb file
console.log(@customer);
但是上面没有在控制台中显示任何内容。
语法正确吗?输出要显示在browser window/console
还是其他地方?
答案 0 :(得分:0)
console.log(...)
看起来像JavaScript。 @customer
看起来像Ruby。您无法在JavaScript中打印Ruby变量-它们在不同的时间,不同的环境中执行。如果您使用的是EJS文件(而不是JS),则可以
console.log(<%= @customer.to_json %>)
,它将在提供JS文件时插入Ruby的@customer
的值;但这很可能不是您想要的。在几乎所有情况下,您都希望在HTML内呈现Ruby变量,或者通过使用AJAX请求将服务器变量的值传达给JavaScript代码,或者像这样在HTML内呈现它:
<script>
var customer = <%= @customer.to_json %>;
</script>
答案 1 :(得分:0)
正确的方法是这样的
console.log("#{@customer.name}")
您需要在“”或“”中插入红宝石代码