Ионный родной InAppBrowser: как добавить прослушиватель событий

Я использую InAppBrowser в своем Ionic проекте, проблема заключается в добавлении нового слушателя событий, так как в документации ionic-native вообще не работает, я ссылался на оригинальный cordova-plugin-inappbrowser и ни одно из этих событий не работает, я знаю это Это проблема со стороны обертывания Ionic и их плохой документации, они меняют весь способ вызова плагина, и вам нужно попробовать, пока вы не получите правильный путь.

Поэтому я спрашиваю, как добавить слушателей событий в InAppBrowser плагин?

То, что я пробовал до сих пор, это:

var _options = 'location=no,clearsessioncache=yes,hardwareback=no';
function openLink(url, target, options) {
  if (angular.isUndefined(options)) {
    options = _options;
  }
  if (!$window.cordova) {
    $window.open(url, '_blank', options);
  } else {
    _attachEvents(new $cordovaInAppBrowser(url, target, options));
  }
}

function _attachEvents(browser) {
  // FIXME this is not working seems, need to find documentation about this
  browser.on('loadstart').subscribe(function (e, event) {
    console.debug(e, event);
    if (event.url.match("mobile/close")) {
      browser.close();
    }
    $rootScope.$broadcast('$ionicParentView.enter');
  });
  browser.on('loaderror').subscribe(function (e, event) {
    console.debug(e, event);
    browser.close();
    $rootScope.$broadcast('$ionicParentView.enter');
  });
}

И попробовал ngCordova способом:

$rootScope.$on('$cordovaInAppBrowser:loadstart', function (e, event) {
  if (event.url.match("mobile/close")) {
    $cordovaInAppBrowser.close();
  }
  $rootScope.$broadcast('$ionicParentView.enter');
});
$rootScope.$on('$cordovaInAppBrowser:loaderror', function (e, event) {
  $cordovaInAppBrowser.close();
  $rootScope.$broadcast('$ionicParentView.enter');
});

И они не работают, кстати, он работал с ngCordova, но, поскольку я перешел на ionic-native, он вообще перестал работать.

Я использую Ionic 1.3.2 с ionic-native 2.2.16 (так как 2.2.17 и 2.3.0 - это неработающие сборки)

0 ответов

Другие вопросы по тегам