我想在离子2中将值从一个页面传递到另一个页面。
例:
第一页:
名字:abc
姓氏:xyz
第二页: 名字:获取名字的值 姓氏:获取姓氏
的值答案 0 :(得分:1)
我认为您有两种解决方案可以解决它。
在第一页:
this.navController.push(SecondPage, { yourParameterName: yourParameterValue });
在第二页:
onPageDidEnter() {
this.yourClassVariable = this.navParams.get('yourParameterName');
}
请注意,如果您想将SecondPage中的内容传递给FirstPage,您可以将回调作为参数传递,并在执行后退操作之前在SecondPage中调用该值以在FirstPage中指定值(this.navController.pop() )
2.您还可以通过注射服务帮助解决价值共享问题
@Injectable()
export class MyService {
private string $value;
setValue(newValue:string) {
this.$value = newValue;
}
getValue():string {
return this.$value;
}
}
然后在两个页面中,您可以将服务添加为提供者并设置/获取您感兴趣的值
@Component({
providers: [MyService]
})
export class FirstPage {
constructor(private myService:MyService) {
}
private anyWhere() {
this.myService.setValue('myValue');
this.myService.getValue();
}
}