0

我们有一个 html5 移动应用程序。

我们有一个我们调用的注销函数,location.reload()以便我们可以清除 index.html 中的所有附加元素。

问题来了。我们现在不能调用任何伪造属性,

示例侦听器在这里:

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

它正在第一次运行,然后我们单击注销按钮,它将重新加载我们的 index.html 文件,然后forge.is.connection.connected()现在未定义。

我希望 trigger.io 的人能解决这个问题以及我们如何防止这种情况。

欢迎任何建议,并将不胜感激。

4

1 回答 1

1

这似乎是触发器代码中的一个错误,我已将此添加到我们的内部跟踪器中,以便将来修复。

同时,如果连接状态的值发生变化,它似乎确实会更新,如果页面重新加载并且没有变化,它只是保持未定义状态。因此,可以安全地假设它是否未定义,它与以前相同。

这意味着以下代码应确保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);
});
于 2013-07-22T08:41:17.300 回答