0

我有一个用于“项目”表单的 JST-->EJS 主干模板。理想情况下,我想使用相同的模板来创建和编辑模型。

目前,我在模板中有这样的东西:

<input type='text' name='demo_field' value='<%= demo_field %>' />

只要 demo_field 有一个值,它就可以正常工作,但如果没有,整个表单将失败,并出现未捕获的 referenceError。

那么,在 Backbone ... 或 JST ... 或 EJS 中,确保变量字段返回空白而不是失败的最优雅的方法是什么?

干杯...

4

1 回答 1

1

我可能会做一个帮手,因为 javascript 没有任何像 field if field?CoffeeScript 这样的好方法。

把这样的东西扔到一个辅助函数中:

function printIfExists(field) {
  return (typeof field !== "undefined" && field !== null) ? field : '';
}

并在您的模板中调用它。非常简单!

您可能还想使用备用function声明:

var printIfExists = function(field){...}

我一直在使用咖啡脚本这么久我不记得为什么......前一个例子的范围问题,可能。

于 2012-01-26T07:28:25.737 回答