簡體   English   中英

Meteor - 模板被銷毀時停止跟蹤器自動運行(用戶離開頁面)

[英]Meteor - Stop Tracker Autorun when Template is Destroyed (user leaves page)

在我的Meteor模板中,我有一個名為ohlcInit()的函數,當Mongo中有新數據時它會自動運行:

Template.Live.rendered = function(){

  function ohlcInit() {
    // computations run here
  }

  Tracker.autorun(function() {
      ohlcInit();
  });
};

當用戶在頁面/模板上進行定義時,這非常有用,但只要用戶導航到站點上的另一個URL並且模板被銷毀,就會在控制台中拋出錯誤:

Tracker重新計算函數的異常:undefined不是函數TypeError:undefined不是函數在ohlcInit( http:// localhost:3000 / client / views / live / live.js?dd5fb618daf9ea9e233c37caaa99002009e987:271:33 )的http://在Tracker.Computation的Tracker :3000 / client / views / live / live.js?dd5fb618daf9ea9e233c37caaa9ed200fe3e987:306:5的Tracker.Computation._compute( http:// localhost:3000 / packages / tracker.js?192a05cc46b867dadbe8bf90dd961f6f8fd1574f:288:36 ) .rcompute( http:// localhost:3000 / packages / tracker.js?192a05cc46b867dadbe8bf90dd961f6f8fd1574f:302:14 )在Tracker.flush( http:// localhost:3000 / packages / tracker.js?192a05cc46b867dadbe8bf90dd961f6f8fd1574f:430:14

當用戶導航到新的URL /模板時,如何安全地停止/結束自動運行計算?
我正在使用iron:router

使用新的Template.autorun函數,該函數在模板被銷毀后自動清理。 要在rendered回調中使用它,只需用Tracker.autorun替換Tracker.autorun this.autorun

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM