0

基於一個運行的Web應用程序(Backbone.js 1.0.0),我需要覆蓋歷史記錄啓動方法,強制輪詢檢測哈希更改並放棄其他選項。在新文件上,我這樣做:覆蓋主幹歷史啓動方法

var myHistory = Backbone.History.extend({ 
     start: function (options) { 
      if (History.started) throw new Error("Backbone.history has already been started"); 
      History.started = true; 
      // code here 
     } 
    }); 
    Backbone.history = new myHistory; 

因此,我得到一個錯誤:ReferenceError:Undefined variable:History。

任何提示?謝謝!

+0

您是否試圖在您的代碼或當前對象'this'中引用'Backbone.history'? – Mark

+0

謝謝@Mark,我指的是'Backbone.history'。導入backbone.js後,我正在導入該文件。我認爲沒有任何與範圍有關的錯誤。 – Fabrefumi

回答

1

我知道這個問題是相當古老的,你現在可能已經解決了,但我最近不得不做了類似的事情。對我來說,我用'Backbone.History.started'替換了'History.started'的地方,因爲History.started是原始Backbone庫中的一個變量。