Angular4.x+Ionic3 踩坑之路之 Ionic3.x 界面传值

前端之家收集整理的这篇文章主要介绍了Angular4.x+Ionic3 踩坑之路之 Ionic3.x 界面传值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1.Ionic3.x中页面(组件)之间正向传值方式?

这里所说的正向传值指的是如有两个页面,我们简称 页面A页面B,正向指的是A跳转到B,比如一个商品跳转这个商品的详情页面

正向传值Ionic3.x主要有2种

  1. 标签上直接跳转
  2. Js跳转
1) 标签上直接跳转

Ionic3.x对Angular2以上的的路由进一步封装,路由跳转主要是由模块 NavController 来完成的,传递参数主要是由模块 NavParams 来完成的,用法如下

A页面内容:

htmll:代码
<button [navPush]="bPage" [navParams]="{id:'001'}"></button>
ts:代码
import { BPage } from '../BPage';
export class APage {
  public bPage:any;
  constructor(public navCtrl: NavController,public navParams: NavParams){
       this.bPage = BPage;
  }
}

注意:这边 自己经常遇到一个问题就是我们申明,变量bPage的,可以有的教程就直接赋值,如
public bPage = BPage;我的问题是,我写这种写法点击按钮跳转不了,所以我的解决方法 是在构造函数里面赋值,这样就可以解决啦!

那B页面要怎么获取 呢,看招:

B页面内容:

ts代码

export class APage {

public bPage:any;
constructor(public navCtrl: NavController,public navParams: NavParams){
   // 获取A页面传递过来的id
   let id = this.navParams.get('id');
 }

}

获取相对还是很容易!

2.Js跳转

A页面内容:

htmll:代码

<buttton (click)="goToBpage()"></button>

ts代码

import { BPage } from '../BPage';

export class APage {

  constructor(public navCtrl: NavController,public navParams: NavParams){
  }
  // 跳转方法
  goToBpage(){
      this.navCtrl.push(BPage,{'id':'0001'})
  }
}

B页面获取同上,这边js跳转主要是用NavControlller中的push方法,第一个参数为要跳转页面,第二个参数的就是参数值,注意这是一个Json格式的对象

总结

今天主要分享界面的正向传值,其实主要归功了NavController和NavParams这两个强大 的模块,这两个还有很多方法 ,大家要进一步学习,可以到官方文档查看哦。

愿你成为终身学习者
原文链接:https://www.f2er.com/angularjs/144987.html

猜你在找的Angularjs相关文章