Trigger.io:调用location.reload()我们可以'请勿访问任何锻造属性

Trigger.io: Calling location.reload() we can't access any forge properties

本文关键字:勿访问 属性 任何锻 访问 调用 io location reload Trigger 我们      更新时间:2023-09-26

我们有一个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的人能澄清这个问题,以及我们如何防止这种情况的发生。

欢迎提出任何建议,我们将不胜感激。

这似乎是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);
});