0

有点“概念”问题。我的任务是创建一个显示公司统计数据的内部屏幕。我认为使用前端框架(目前在骨干和余烬之间)会很好,但问题是,我在“统计服务器”可以提供什么方面非常有限,所以像 socket.io 这样的解决方案很遗憾不在框架内。但是,我想有一个非常简单的 API 来返回 JSON 统计信息:

{
    "Bob":{
        "xs":5,
        "turnover":10000,
        "surveys":5
    }
}

然后我可以让框架每隔一两秒轮询一次 API 以进行更改。但是我需要找到一种方法来检测值何时发生变化(因此可以弹出警报或其他东西。)

if(new.value != old.value) alert_function()

但这意味着对每一个可能会变得混乱的数字都这样做。使用主干或 ember.js 做这种事情的最佳方法是什么?

4

1 回答 1

1

主干获取 API支持一个选项 {update: true},它将在现有值合并到集合中时触发集合更新事件。然后,您可以捕获这些更新事件并运行您的自定义代码。链接文档中的示例:

例如,要获取一个集合,为每个新模型获取一个“添加”事件,为每个更改的现有模型获取一个“更改”事件,而不删除任何内容:

mycollection.fetch({update: true, remove: false})

然后,您可以使用主干事件让您的视图监听更改并根据需要进行更新。这个问题有一个很好的例子。

另外,这有点离题,但是当我看到您的标题时,我立即想到了D3.js。它非常适合轮询 JSON URL 并使用转换来更新可视化。

于 2013-03-11T14:20:09.340 回答