2014-11-08 42 views
3

下面的文檔讓我看起來像我的代碼應該工作,但是我得到一個未定義的錯誤,我確定它是簡單的,但我不能讓我的頭靠近它。刷新Keen.io圖/查詢

https://github.com/keen/keen-js/blob/master/docs/visualization.md#automatic-updates

var clicks_keen = new Keen.Query("count", { 
eventCollection: "clicks", 
groupBy: "campaign.id", 
interval: window.interval, 
timeframe: window.timeframe 
}); 

clicks_keen.refresh(); 
+0

「window.interval」和「window.timeframe」定義在哪裏?你故意使用全局變量嗎? – 2014-11-08 19:25:43

+0

它們被進一步定義。我沒有真正的理由使用全局變量,代碼只需要清理。但是,即使沒有這些變量,只使用標準字符串,問題仍然存在。 refresh()調用似乎是問題,但是他們的文檔使得它看起來應該起作用。 – Jake232 2014-11-08 19:30:09

+3

根據他們的文檔,如果您先執行'var req = client.run ...'之類的操作,則可以處理thinger,您可以執行'req.refresh()'。我認爲這是你的問題。 – 2014-11-08 19:35:00

回答

3

事實證明,bebraw是正確的。您需要將client.run()的結果存儲在變量中,並調用該對象的刷新。

您還需要將原始查詢保留在變量中,但更新查詢的任何實際數據(更改時間範圍等)需要該對象。