在Backbone.js中渲染模板时要传递的正确数据格式是什么。 JSON还是型号?

时间:2012-12-09 00:04:30

标签: backbone.js

为了简单起见,我应该

$(@el).html @template(model: @model)

$(@el).html @template(@model.toJSON())

我曾经是第一种方式,这就是我所教的。但最近我发现第二种方式也是可以接受的。在渲染模板时,它至少节省了很多@ model.get(“attribute_name”)。

那么最好的方法是什么?

1 个答案:

答案 0 :(得分:3)

我认为@model.toJSON()更好,因为你提到的原因:它使得模板更清晰。

此:

<div><%= name %></div>

眼睛比以下容易:

<div><%= this.model.get("name") %></div>

查看Backbone.js上的一些example apps,您会看到他们使用.toJSON()方法。


<子> 我想这也是一个问题,你是否希望你的模板能够访问完整的View对象。显然,一旦你使用toJSON(),这是不可能的。对我而言,没有这种访问权限是关注问题的分离,因为模板应该是关于表示的,使用最少的代码,并且尽可能接近常规的HTML标记。