在特定URL中关闭AngularJS窗口

3
我是新手,刚开始学习angularjs,所以对于有经验的人来说,这个问题可能看起来很傻。但我真的不知道该怎么做,有人能告诉我如何在到达特定url后从webview返回应用程序吗?比如说,我在浏览器中打开一个窗口进行支付过程,当webview中的url出现成功消息时,我想关闭webview并回到我的应用程序。我在Google上找到了一种方式,在$window.open()中传递三个参数,通过第二个参数可以实现,但不知道如何实施,请问是否有人能提供处理方法?
我研究了这个链接:- 跨页面加载跟踪子窗口 我也尝试了这个函数:

 if (!$window.closed){ 
 if($window.location.href =="http://www.magentomobileshop.com/demo/index.php/payu/index/success")
 {
    $window.close()
   }
                 
 } 

谢谢

2个回答

2
请看一下: 使用Angularjs创建的Android应用程序中关闭子窗口 这是我更新后的答案……我已经测试过了,它运行得很好。

var url = "test_Url";

var socialLoginWindow = window
  .open(url,
    '_blank',
    'location=no');
// listen to page load
// events
socialLoginWindow
  .addEventListener(
    'loadstart',
    function(
      event) {
      var url = event.url;
      if (url == "http://www.magentomobileshop.com/demo/index.php/payu/index/success/") {
        socialLoginWindow
          .close();
      }

    });

这是它的参考链接:

https://forum.ionicframework.com/t/opening-external-link-and-closing-it-at-an-event/6660/9

在这里,“Loadstart”将跟踪您在窗口中的每个URL更改。因此,当前的URL可以从event.url获取

干杯!!! 编码愉快。


1
使用$window服务中的$window.close()。您可以像这样广播结果到另一个控制器AngularJS - 在控制器之间通信。
您可以检查一下这个链接如何在AngularJS中关闭浏览器窗口,看看它是否能回答您的问题。
您可以使用$window.location.href来检查特定URL是否为真。

嘿Makb,我怎么才能检查webview中的网址,以便我可以在特定的网址上关闭我的webview呢? - user2028

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接