Backbone,JST,EJS:模板中的空白值

时间:2012-01-26 06:56:00

标签: backbone.js ejs jst

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

目前,我在模板中有这样的内容:

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

只要demo_field有一个值,它就能正常工作,但如果没有,那么整个表单都会因未被引用的referenceError而失败。

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

干杯...

1 个答案:

答案 0 :(得分:1)

我可能会帮忙,因为javascript没有任何好办法做类似的事情 CoffeeScript中的field if field?

将这样的东西扔进辅助函数:

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

并在模板中调用它。很容易就是馅饼!

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

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

我一直在使用coffeescript这么久以来我不记得为什么......可能会对前一个例子提出范围问题。