2013-07-18 32 views
0

我們有一個html5移動應用程序。Trigger.io:調用location.reload()我們無法訪問任何僞造屬性

我們有一個註銷功能,我們將其稱爲location.reload(),以便我們可以清除index.html中的所有附加元素。

問題來了。我們現在不能調用任何僞造性,

一個樣監聽器是在這裏:

forge.event.connectionStateChange.addListener(function() { 
     connectedToInternet = forge.is.connection.connected(); 
    }, function(error) { 
     showAlert(error); 
    }); 

它正在爲它的第一次運行,然後我們點擊退出按鈕,這將重新加載索引.html文件,那麼forge.is.connection.connected()現在是未定義的。

我希望有人從trigger.io可以清除這個問題,我們如何防止這種情況。

任何建議都歡迎,將大大apreciated。

回答

1

這似乎是Trigger代碼中的一個錯誤,我將它添加到我們的內部跟蹤器中,以便將來修復它。

與此同時,如果連接狀態的值發生更改,它的值似乎會更新,如果頁面重新加載並且沒有更改,它將保持爲未定義狀態。所以假設它是未定義的,它應該是安全的,它和以前一樣。

這意味着下面的代碼應該確保connectedToInternet始終包含正確的連接信息。

var connectedToInternet = false; 
forge.prefs.get("connectedToInternet", function (connected) { 
    if (connected !== null) { 
     connectedToInternet = connected; 
    } 
}); 
forge.event.connectionStateChange.addListener(function() { 
    var connected = forge.is.connection.connected(); 
    if (connected != undefined) { 
     connectedToInternet = connected; 
     forge.prefs.set("connectedToInternet", connectedToInternet); 
    } 
}, function(error) { 
    showAlert(error); 
}); 
+0

你好,似乎沒有解決的情況。該代碼只是添加默認值,但它不會再調用一次重新加載的偵聽器。我們無法確定應用程序的當前連接狀態 –

+0

重新加載後,偵聽器似乎仍然會被調用,我的測試頁面是http://pastie.org/8163630如果連接狀態發生更改,我會看到日誌輸出更改,即使在按下重新加載之後。 – Connorhd