0

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

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

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

然后我重新计算 model.change 事件的数据集属性。这会触发重新计算数据的模型自定义方法 updateAttributes()。在我看来,这似乎效率很低,因为我正在计算属性,首先是在初始化方法中,然后是在 updateAttributes 方法中。

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

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

我什至不确定大型单例模型是否可行,它似乎工作得很好。

如果有人对这种情况有一些提示,那就太棒了。我是 Backbone 的新手,发现它很有挑战性!

4

0 回答 0