Backbone.js计算器应用程序Architechture(Singleton模型)

时间:2013-07-22 06:18:33

标签: javascript json backbone.js

我正在寻找一些关于我在Backbone中构建的应用程序的架构指南。

它基本上是一个多页应用程序,它根据初始数据集计算数据。初始数据集是特定于国家/地区的,并且是从JSON文件中提取的。

当应用程序启动时,数据集将用作默认值:在我的主Backbone.Model中。然后必须处理/计算这些默认值并将其设置为其他模型属性。这些属性代表我的app状态。有些可以从UI中覆盖。所以回顾一下,我使用单例Backbone.Model来存储初始数据,然后我在模型初始化方法上构建其余的数据。

然后我重新计算model.change事件的数据集属性。这会触发模型自定义方法updateAttributes(),它会重新计算数据。在我看来它的效率非常低,因为我正在计算属性,首先在initialize方法中,再在updateAttributes方法中。

在处理完所有值后,数据集就完成了,可以应用于应用模板。现在棘手的部分是该集合中的一些计算数据现在可以从UI编辑。从UI编辑这些默认属性后,我不希望updateAttributes方法重新计算它们的值,因为它们不再是默认数据,它们现在是用户定义的数据。

我不太确定从这一点开始,我正在考虑在(快速扩展的)模型上设置一些属性,例如attributeNameSetFromUI:true,然后在updateAttributes()中有一些if()语句检查这些的方法,如果不需要默认值,则跳过该部分计算。

我甚至不确定一个大单身模型是否可行,它似乎运作良好。

如果有人对这种情况有一些提示会很棒。我是Backbone的新手,发现它非常具有挑战性!

0 个答案:

没有答案