我正在尝试使用InAppBrowser插件的this.data
方法添加名为executescript()
的typescript属性,但该属性返回undefined而不是'testdata'
。
我不知道这是否适用,或者我是否做错了。
import { Component } from '@angular/core';
import { NavController, LoadingController, NavParams} from 'ionic-angular';
import { InAppBrowser } from '@ionic-native/in-app-browser';
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
browser: any;
data = 'testdata';
constructor(
public navCtrl: NavController,
public navParams: NavParams,
public iab: InAppBrowser
) {}
showIAB(){
this.browser = this.iab.create('http://example.com/','_blank','location=no,toolbar=yes,zoom=no,hardwareback=no,EnableViewPortScale=yes,closebuttoncaption=Done')
this.browser.on('loadstop').subscribe(
ev =>{
this.browser.executeScript({
code: `document.getElementById('username-1202').value = this.data;
document.getElementById('user_password-1202').value = '123456';`
})
},
err =>{
}
)
}
答案 0 :(得分:1)
您没有正确地将此.data注入模板字符串,请替换为${this.data}
{ code: `document.getElementById('username-1202').value = '${this.data}';
document.getElementById('user_password-1202').value = '123456';`}
如果你按照自己的方式行事,那么" this.data"将采用新窗口的上下文,而不是原始窗口。