我是js的新手,并开始在rails上使用它。我想检查传递的变量值。我在互联网上查找,发现我们必须在Firefox中使用console.log(var_name);' and it gets displayed in console window in
浏览器窗口'(ctrl + shift + j(。但是选中后,不会显示任何内容。下面是我的代码:
customer.js.erb file
控制台.log(@customer(;
但是上面没有在控制台中显示任何内容。
语法正确吗?输出是用browser window/console
还是其他地方显示?
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>
正确的方法是,
console.log("#{@customer.name}")
您需要在"或"中插入Ruby代码