我有这个 Backbone 模型:
graphModel
attributes
country
indicator
year
有相应的 View :
graphView
render()
this.model.get(...)
该应用程序还有一个用于加载 csv 数据的通用数据源:
dataSource
indicators
indicatorA
country
year
indicatorB
countries
years
每次更改模型属性时,我想在触发更改事件之前检查是否加载了该属性组合的数据。
我的问题是:将数据源与 Backbone 模型和 View 解耦的好方法是什么,以便我可以轻松地尝试注入(inject)模拟数据?
最佳答案
当您谈论具有填充有 CSV 数据的数据源的应用程序时,我有点不清楚您是在谈论 Backbone 随后与之交谈的应用程序的服务器端还是客户端。
但无论哪种方式。我可以谈谈我们在某些脱钩方面的经验。我们经常构建模型并使用 Backbone 的功能来获得“默认”值,例如来自 Backbone 文档的示例:
var Meal = Backbone.Model.extend({ 默认值:{ “开胃菜”:“凯撒沙拉”, “主菜”:“馄饨”, “甜点”:“芝士蛋糕” } });
有了像这样预填充的模型,我们就可以将 View 绑定(bind)到模型并将该数据呈现到页面。同样,如果您有任何其他来源,您可以考虑轻松获取所需数据( jar 装文件可以使用 jQuery 的 .load() 函数加载,或者文本区域的内容可以通过模型的 .set( ) 函数).
关于javascript - Backbone.js - 解耦数据源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8041790/