了解backbone.js 和不同的模板系统
我想知道,将对象提供给模板进行渲染的最佳做法是什么。

要么传入整个主干模型
并使用

或通过 model.toJSON()
只需使用

使用这两种方法之一的利弊是什么?
或者我可以选择我认为最有用的东西而不用担心权衡吗?

最佳答案

这一切都归结为你想做什么,真的。大多数模板系统允许您将任何 javascript 对象传递给模板并调用该对象上的方法、属性和其他位。

就个人而言,我总是将 model.toJSON() 传递给模板。但我知道一些人总是将完整的 model 传递给模板并像您展示的那样调用 .get 。

没有太多的权衡。做任何一个都没有性能损失。调用 .toJSON() 是一个如此快速的调用,因为它只是在幕后调用 _.clone(this.attributes) 。传递 toJSON() 的好处是您不必在模板中编写额外的代码。您可以直接指定属性。传递完整模型的好处是你可以在你的对象上调用方法......但我认为这是一件坏事,方法调用应该在你的 View 对象内完成,而不是模板......那是不过真的是见仁见智。

关于javascript - 将主干模型或导出的 json 对象传递给像 mustache 这样的模板系统,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7332361/

10-11 22:52
查看更多