在我的Meteor應用程序中,我已成功發佈數據服務器端並訂閱了該數據客戶端。現在,我並不是直接將原始數據推送到客戶端的屏幕上,而是將其存儲爲javascript對象,對其執行一些計算(數字計算),並將結果呈現在客戶端的屏幕上(在HTML5 canvas元素中)。每次Mongo更新時,都應該重新運行JavaScript代碼(即重新設置js對象,再次從該對象執行計算,並將新結果呈現在畫布上)。流星:如何在Mongo數據上執行客戶端計算
我可以使用Template.example.helpers
塊搶蒙戈數據的保持,表明直接在客戶端如下:
Meteor.subscribe('collection','query');
Template.example.helpers({
sampleData: function(){
return Collection.findOne({query:`query`});
}
});
<template name="example">
<div>
{{sampleData.last}}
</div>
<canvas id="test-canvas"></canvas>
</template>
但我」 m試圖做的是在之前推送到客戶端的屏幕前抓住這些數據block:
Meteor.subscribe('collection','query');
Template.example.rendered = function(){
// define HTML5 canvas and context variables
var canvas = $("#test-canvas")[0];
var context = canvas.getContext("2d");
// store Mongo data as Javascript variable
// loop over this variable and perform calculations
// draw results to the canvas
}
我接近這個正確的方式嗎?如果是這樣,我該如何實現它?謝謝!
您能否提供一些代碼示例以解釋您的解釋?我仍然在學習流星,所以我在回覆時遇到了一些麻煩。謝謝! – 2014-09-06 20:44:19