Ionic2 离子2-第二次呼叫后Inappbrowser事件引发
我在ionic 2应用程序中使用inappbrowser插件,如下所示:Ionic2 离子2-第二次呼叫后Inappbrowser事件引发,ionic2,cordova-plugins,inappbrowser,Ionic2,Cordova Plugins,Inappbrowser,我在ionic 2应用程序中使用inappbrowser插件,如下所示: import {InAppBrowser} from 'ionic-native'; launch(url){ this.browser = new InAppBrowser( url, "_blank", "EnableViewPortScale=yes,closebuttoncaption=Done" ); this.browser.on("exit") .subscrib
import {InAppBrowser} from 'ionic-native';
launch(url){
this.browser = new InAppBrowser( url, "_blank", "EnableViewPortScale=yes,closebuttoncaption=Done" );
this.browser.on("exit")
.subscribe(
() => {
this.close_event=true;
},
err => {
console.log("InAppBrowser Loadstop Event Error: " + err);
});
}
然后像这样使用它:
import {InAppBrowser} from 'ionic-native';
launch(url){
this.browser = new InAppBrowser( url, "_blank", "EnableViewPortScale=yes,closebuttoncaption=Done" );
this.browser.on("exit")
.subscribe(
() => {
this.close_event=true;
},
err => {
console.log("InAppBrowser Loadstop Event Error: " + err);
});
}
和html格式:
<button ion-button icon-right color="danger" (click)="launch('https://www.example.com')">launch
<ion-icon name="refresh"></ion-icon>
发布
第一次单击
启动按钮后关闭浏览器,退出事件
不会触发,但第二次单击启动按钮后关闭浏览器退出事件
是否触发可能是您第一次单击启动按钮时,设备平台还没有准备好
尝试将对appbrowser中任何方法的调用放入Plaform.ready()
中,如下所示:
...
import { Platform } from 'ionic-angular';
import { InAppBrowser } from '@ionic-native/in-app-browser';
...
export class HomePage {
private iab: InAppBrowser;
private platform: Platform;
private browser;
...
var launch = function(url) {
this.platform.ready().then(
() => {
this.browser = this.iab.create( url, "_blank", "EnableViewPortScale=yes,closebuttoncaption=Done" );
this.browser.on("exit").subscribe(
(event) => {
this.close_event = true;
},
(err) => {
console.log("InAppBrowser Loadstop Event Error: " + err);
}
);
}
);
};
...
}
也许当你第一次点击启动按钮时,设备平台还没有准备好
尝试将对appbrowser中任何方法的调用放入Plaform.ready()
中,如下所示:
...
import { Platform } from 'ionic-angular';
import { InAppBrowser } from '@ionic-native/in-app-browser';
...
export class HomePage {
private iab: InAppBrowser;
private platform: Platform;
private browser;
...
var launch = function(url) {
this.platform.ready().then(
() => {
this.browser = this.iab.create( url, "_blank", "EnableViewPortScale=yes,closebuttoncaption=Done" );
this.browser.on("exit").subscribe(
(event) => {
this.close_event = true;
},
(err) => {
console.log("InAppBrowser Loadstop Event Error: " + err);
}
);
}
);
};
...
}
你用的是旧版的爱奥尼亚原生版,对吧?因为在上一个版本中,可用的方法发生了一些变化(),我尝试了新方法和旧方法,但是在第二次调用中,AppBrowser事件触发了您使用的是旧版本的Ionic Native,对吗?因为在上一个版本中,可用的方法发生了一点变化(),我尝试使用新方法和旧方法,但是在第二次调用中,AppBrowser事件触发