JavaScript状态到函数序列处理(mvc,依赖函数)

时间:2011-05-09 13:15:57

标签: javascript model-view-controller events web-applications backbone.js

我有一个用JavaScript编写的“交互式图表应用程序”。

状态以及其他属性包含“当前”数组:

state = {
    current: ["USA", "Norway", "Japan"],
    [...]
}

将国家/地区添加到此列表(或一般更改状态)时,应触发一系列功能 - 例如:

function add(country){
     state.current.push(country);
}

=> updateYmax() then updateScales() then render()

在这种情况下,render()依赖于updateScales(),而updateScales()依赖于updateYmax()。

在JavaScript中,最佳做法是什么?保持上述简单? 您能举例说明使用Backbone.js或其他MVC架构来按正确的顺序简化状态处理和函数调用吗?

感谢。

2 个答案:

答案 0 :(得分:2)

让您的国家/地区列表成为Backbone.Collection并从中侦听事件(通常添加,删除,刷新)。将你的事件链接到渲染调用,正如alexanderb解释的那样。

答案 1 :(得分:0)

您可以使用backbone.js事件。状态更改后,您将触发“StateChanged”事件。不同的订户使用它并将其作为逻辑的一部分(更新,渲染等)

http://documentcloud.github.com/backbone/#Events-bind