【问题标题】:Unable to close IONIC InAppBrowser for particular URL无法关闭特定 URL 的 IONIC InAppBrowser
【发布时间】:2021-11-26 08:03:35
【问题描述】:

我正在使用带有 React 或 Capacitor 的 Ionic 我想关闭我的 InAppBrowser 以获取任何特定的 URL ....提前致谢。

// open InAppBrowser w/out the location bar
var ref = window.open('http://myloginapp.com', '_self');

// attach listener to loadstart
ref.addEventListener('loadstart', function(event) { 
    var urlSuccessPage = "http://myloginapp/success/";
    if (event.url == urlSuccessPage) {
    ref.close();    
    }
});

【问题讨论】:

    标签: reactjs ionic-framework capacitor


    【解决方案1】:

    查看插件documentation 中的示例。 loadstart 事件似乎不包含 URL 参数。尝试使用beforeloadCallBack 来检测正在加载的 URL。

    例如:

    ref.addEventListener('beforeload', function(params, callback) { 
        var urlSuccessPage = "http://myloginapp/success/";
    
        if (params.url === urlSuccessPage ) {
            ref.close();
        } else {
            callback(params.url);
        }
     });
    

    另外,请确保 window.open() 确实引用了 InAppBrowser。您可能需要使用window.cordova.InAppBrowser.open()

    【讨论】:

    • var ref = InAppBrowser.create('https://stackoverflow.com/', '_self', 'location=yes'); ref.addEventListener('beforeload', function(params, callback) { console.log(params.url) var urlSuccessPage = "https://stackoverflow.com/users/signup"; if (params.url === urlSuccessPage ) { ref.close(); } else { callback(params.url); } });。它不适合我
    • 你能分享更多信息吗?你有任何错误吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-05
    • 1970-01-01
    相关资源
    最近更新 更多