【NodeJS】Unexpected token (109:0) 返回错误码500

刚开始报错是这样的:
这里写图片描述
Unexpected token call 是什么我没看懂,但我发现 span.label.lable-success 后面的 #[i+1] 写错了,应该是 #{i+1}

改成完这个错误后又是一个错误提示:
这里写图片描述
What? Unexpected token (109:0) 返回错误码500是什么鬼

我先将自己这段源码的 - if ... - else 检查下

// list.jade
...
each item,i in items
    - if (item.type)
    h5
        button.btn.btn-success.btn-xs [#{item.type}]
            span.label.label-success #{i+1}
        a(href='#{item.link}' target="_blank") #{item.title}
    - else
    h5
        button.btn.btn-info.btn-xs [未知]
            span.label.label-info #{i+1}
        a(href='#{item.link}' target="_blank") #{item.title}
...

大家都知道,Jade 目前支持三种类型的可执行代码。第一种是前缀 -, 这是不会被输出的:

- var foo = 'bar';

这可以用在条件语句或者循环中:

- for (var key in obj)
  p= obj[key]

由于 Jade 的缓存技术,下面的代码也是可以的:

- if (foo)
  ul
    li yay
    li foo
    li worked
- else
  p oh no! didnt work

现在,我将我条件语句的前缀 - 去掉看看会是什么结果
这里写图片描述
这里就很明显了!说 else 找不到匹配的 if ,然后我再仔细看下代码,呃…没做好缩进

OK~问题解决(完全就是一个缩进问题的闹剧..尴尬),显示正常,最终代码如下:

// list.jade
...
each item,i in items
    if (item.type)
        h5
            button.btn.btn-success.btn-xs [#{item.type}]
                span.label.label-success #{i+1}
            a(href='#{item.link}' target="_blank") #{item.title}
    else
        h5
            button.btn.btn-info.btn-xs [未知]
                span.label.label-info #{i+1}
            a(href='#{item.link}' target="_blank") #{item.title}
...

猜你喜欢

转载自blog.csdn.net/u013451157/article/details/79938450