2

我有这个主干模型:

graphModel
 attributes
   country
   indicator
   year

对应的视图:

graphView
 render()
   this.model.get(...)

该应用程序还有一个加载 csv 数据的通用数据源:

dataSource
  indicators
    indicatorA
      country
        year
    indicatorB
      countries
        years

每次更改模型属性时,我想在触发更改事件之前检查是否加载了该属性组合的数据。

我的问题是:将数据源与 Backbone 模型和视图解耦以便我可以轻松尝试注入的模拟数据的好方法是什么?

4

2 回答 2

0

当您谈论应用程序具有填充有 CSV 数据的数据源时,我有点不清楚,无论您是在谈论 Backbone 然后与之交谈的应用程序的服务器端还是客户端。

但是无论哪种方式。我可以谈谈我们在一些脱钩方面的经验。我们经常构建模型并使用 Backbone 具有“默认”值的能力,例如 Backbone 文档中的这个示例:

var Meal = Backbone.Model.extend({ defaults: { “开胃菜”: “凯撒沙拉”, “主菜”: “馄饨”, “甜点”: “芝士蛋糕” } });

使用像这样预先填充的模型,我们可以将视图绑定到模型并将该数据呈现到页面。同样,如果您有任何其他来源可以轻松获取所需数据(可以使用 jQuery 的 .load() 函数加载罐头文件,或者可以通过模型的 .set( ) 功能)。

于 2011-11-07T20:24:28.683 回答
0

据我了解,您有不同模型的单个 URL,并且您想在设置或更改模型之前以某种方式检查它。

您可以使用parse()模型上的方法来更改其内容,请参阅http://documentcloud.github.com/backbone/#Model-parse

于 2011-11-10T10:58:03.427 回答