Ionic - inappbrowser.close не является функцией - PullRequest
0 голосов
/ 14 октября 2019

Я пытаюсь использовать плагин "in-app-browser" с ionic.

Вот мой код:

    const myBrowser = this.iab.create(mylink, '_blank');

    myBrowser.on('loadstop').subscribe(
      data => {

          if (data.url.substring(0, 37) == this.redirect_uri){
            myBrowser.close(); 
          }
      });

В моей консоли я получил эту ошибку:

TypeError: Object(...) is not a function
    at InAppBrowserObject.close (vendor.js:70892)
    at SafeSubscriber._next (main.js:55)
    at SafeSubscriber.__tryOrUnsub (vendor.js:20899)
    at SafeSubscriber.next (vendor.js:20846)
    at Subscriber._next (vendor.js:20786)
    at Subscriber.next (vendor.js:20750)
    at Channel.fire (cordova.js:843)
    at InAppBrowser._eventHandler (inappbrowser.js:53)
    at cb (inappbrowser.js:118)
    at Object.callbackFromNative (cordova.js:291)

Итак, строка «myBrowser.close ()» работает некорректно. В чем проблема ? Можете ли вы помочь мне, пожалуйста?

1 Ответ

0 голосов
/ 16 октября 2019

Наконец, я решил свою проблему: в моем package.json я использовал '@ionic-native/in-app-browser':'5.XX.XX' (и все остальные @ ionic-native). Но для Ionic 3 мы должны использовать '@ionic-native/in-app-browser':'4.XX.XX'

И, конечно, импорт должен быть таким import { InAppBrowser } from '@ionic-native/in-app-browser';

И не таким import { InAppBrowser } from '@ionic-native/in-app-browser/ngx';

...