0

我刚开始玩 node、express 和玉。我尝试在玉模板中做这样的事情:

my-options = {"this": "something", "that": "something else", "those": "more stuff", "these": "also included"}

form
  select(name="myselection")
    each option, key in my-options
      option(value="#{key}") option

但是,我得到的只是一个 500 服务器错误,这根本没有帮助。我在这里做错了什么?任何帮助将非常感激。

更新 我刚刚发现,玉模板本身不能包含变量定义。因此,my_options需要在相应的 router.js 文件中定义散列,并将其作为参数传递给相应的result.render()函数。

4

2 回答 2

1

您的第一行必须是可执行的 JS 代码,并且“my-options”不是有效的 JS 变量名。

于 2013-06-22T12:27:07.647 回答
0

实际上,你可以在 Jade 中定义变量,你只需要以连字符开头。行首的 A-告诉 Jade 执行后面的代码而不输出它。行首的 A=告诉 Jade 执行后面的代码并在完成后输出。

例如,如果你这样做

- var foo = "bar"
= 2+2
p #{foo}

您将在页面源代码中看到这一点:

4
<p>bar</p>
于 2013-06-23T02:19:07.123 回答