Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript coffeescript在函数范围外编译缩进代码_Javascript_Coffeescript - Fatal编程技术网

Javascript coffeescript在函数范围外编译缩进代码

Javascript coffeescript在函数范围外编译缩进代码,javascript,coffeescript,Javascript,Coffeescript,Coffeescript现在正在编译以下代码 $ -> $("#debug").val "hey" for i in [0..3] m = new Message(5,5) text = "<div>#{m.message[m.message_id]}</div>" $("body").append(text) $-> $(“#调试”).val“嘿” 对于[0..3]中的i m=新消息(5,5) te

Coffeescript现在正在编译以下代码

$ ->
    $("#debug").val "hey"
    for i in [0..3]
        m = new Message(5,5)
        text = "<div>#{m.message[m.message_id]}</div>"
        $("body").append(text)
$->
$(“#调试”).val“嘿”
对于[0..3]中的i
m=新消息(5,5)
text=“#{m.message[m.message_id]}”
$(“正文”).append(文本)
进入:

$(函数(){
返回$(“#调试”).val(“嘿”);
});

对于(i=0;i这里有一个粗略的猜测:您正在混合制表符和空格进行缩进。如果您的咖啡脚本是这样的(当然,
是一个制表符):

$->
$(“#调试”).val“嘿”
对于[0..3]中的i
m=新消息(5,5)
text=“#{m.message[m.message_id]}”
$(“正文”).append(文本)

然后,您将获得所看到的输出,如果您的制表位设置为4,您的眼睛将不会注意到。

+1大多数情况下,这就是问题所在。对于CoffeeScript,您确实需要使用将制表符转换为空格的编辑器,或者至少将其设置为显示“不可见”的模式。@Thilo:Same editor“rules”作为Python或任何其他重要的空白语言,我想。让我回到makefile时代。OTOH,它教会了我寻找制表符。讨厌制表符。这正是问题所在。在我将所有制表符转换为空格后,所有问题都解决了。@lkahtz:如果你能将编辑器配置为显示宽度为8的制表符,并且仍然缩进4个空格的话那么你将来也许可以避免这种不愉快。
  $(function() {
    return $("#debug").val("hey");
  });
  for (i = 0; i <= 3; i++) {
    m = new Message(5, 5);
    text = "<div>" + m.message[t.message_id] + "</div>";
    $("body").append(text);
  }
$ ->
    $("#debug").val "hey"
<tab>for i in [0..3]
        m = new Message(5,5)
        text = "<div>#{m.message[m.message_id]}</div>"
        $("body").append(text)