2014-11-14 23 views
11

, yeni veri Mongo mevcuttur zaman autorun olduğunu ohlcInit() adında bir işleve sahip (kullanıcı sayfası bırakır)Meteor Şablon tahrip edilir Dur Tracker Autorun benim Meteor şablonunda

Exception from Tracker recompute function: undefined is not a function TypeError: undefined is not a function at ohlcInit (http://localhost:3000/client/views/live/live.js?dd5fb618daf9ea9e233c37caaaa9ed200fe3e987:271:33) at http://localhost:3000/client/views/live/live.js?dd5fb618daf9ea9e233c37caaaa9ed200fe3e987:306:5 at Tracker.Computation._compute (http://localhost:3000/packages/tracker.js?192a05cc46b867dadbe8bf90dd961f6f8fd1574f:288:36) at Tracker.Computation._recompute (http://localhost:3000/packages/tracker.js?192a05cc46b867dadbe8bf90dd961f6f8fd1574f:302:14) at Tracker.flush (http://localhost:3000/packages/tracker.js?192a05cc46b867dadbe8bf90dd961f6f8fd1574f:430:14)

nasıl: hataları konsolda atılan, kullanıcının sitede başka bir URL'ye gider ve şablon yok edilir gibi kullanıcı kısa sürede bu her tanımlandığı sayfa/şablonu, ancak Bir kullanıcı bir web'de gezinirken otomatik olarak hesaplamayı durdur/bitir yeni bir URL'ye/şablona mı?
Ben iron:router kullanıyorum.

cevap

16

şablon tahrip sonra otomatik olarak temizler yeni Template.autorun işlevini kullanın. Bir rendered geri arama içinde kullanmak için, sadece this.autorun ile Tracker.autorun değiştirin.

+0

teşekkürler! Sadece Meteor github repo aynı açıklamayı gördü: https://github.com/meteor/meteor/issues/2057 –

+0

Aynı yukarıdaki sorunla koşuyorum ama bu benim 'Tracker.autorun' çağrıları başlıyorum İstemcide bir Meteor yönteminin geri çağrılması. Sunucuda bir işlem başlatıyorum ve işlemi başlatırken herhangi bir hata olmaması durumunda bazı veritabanı değerlerini dinlemem gerekiyor. Şablonu yok ederken yukarıdaki aynı hatayı almam haricinde iyi çalışıyorlar. 'This.autorun' kullanımı geri arama kapsamında çalışmaz. Kapsam sorunları nedeniyle ".destroyed" içinde durmak için bir yol olmadığını varsayalım. – evolross

+1

Bunu çözdüm. Sadece bir 'var şablonu ayarlamak için gerekli = Template.instance()' Doğru kapsamda ** önce ** benim Meteor yöntem çağrısı. Sonra geri arama kodunda call.autorun çağrısı (function ... 'yukarıdaki değişkene atıfta bulunularak mükemmel çalışır. – evolross