Невозможно прочитать свойство «подписаться» на undefined в Ionic 4, Angular 8 - PullRequest
1 голос
/ 26 июня 2019

Я использую Ionic 4 и Angular 8 для своего проекта.Мой проект должен быть интегрирован с сервисом платежного шлюза.Я использую Ionic 4 InAppBrowser для открытия сайта платежного шлюза.

Это моя реализация:

const browserRef = this.browser.create(paymentUrl, '_blank');
this._hookBrowserClosedSubscription = browserRef.on('loadstop').subscribe(event => {
  console.log(event);
});

Я использую команду ionic cordova run android --device --livereload --no-native-run для запуска моего приложенияна реальном устройстве.Я получил следующую ошибку при попытке открыть страницу с помощью плагина InAppBrowser:

Невозможно прочитать свойство 'subscribe' из неопределенного

Я искал эту ошибку, в основномони упоминают о его существовании в браузере , а не реальных устройствах .

Пакетах, которые я использую:

"cordova-plugin-inappbrowser": "^3.0.0"
"@ionic-native/in-app-browser": "^5.8.0",

Может кто-нибудь мне помочьпожалуйста?

Спасибо

1 Ответ

2 голосов
/ 27 июня 2019

Наконец,

Я нашел причину проблемы.Я не знаю почему, но в моем packages.json появляется in-app-browser:

"cordova-plugin-inappbrowser": "^3.0.0"
"@ionic-native/in-app-browser": "^5.8.0",

Когда я запустил свое приложение на своем устройстве, используя Chrome Inspect, я увидел предупреждение:

Собственный: InAppBrowser не установлен или вы работаете в браузере.Возвращаясь к window.open, все методы экземпляра НЕ будут работать.

Я попытался установить in-app-browser с помощью 2 команд:

ionic cordova plugin add cordova-plugin-inappbrowser
npm install @ionic-native/in-app-browser

Когда я запустил свойприложение снова, предупреждающее сообщение исчезло, и браузер сработал, как я ожидал.

Какая глупая ошибка.

Надеюсь, это поможет кому-то, кто имеет такую ​​же ситуацию.

...