Angular 4.x+Ionic3踩坑之Ionic 3.x界面传值详解


Posted in Javascript onMarch 13, 2018

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

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

正向传值Ionic3.x主要有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这两个强大 的模块,这两个还有很多方法 ,大家要进一步学习,可以到官方文档查看哦。

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
JS获取IUSR_机器名和IWAM_机器名帐号的密码
Dec 06 Javascript
Javascript面向对象编程(二) 构造函数的继承
Aug 28 Javascript
使用FlexiGrid实现Extjs表格效果方法分享
Dec 16 Javascript
jquery中表单 多选框的一种巧妙写法
Sep 06 Javascript
在Ubuntu系统上安装Node.JS的教程
Oct 15 Javascript
基于JavaScript实现移除(删除)数组中指定元素
Jan 04 Javascript
JavaScript事件 &quot;事件对象&quot;的注意要点
Jan 14 Javascript
JS克隆,属性,数组,对象,函数实例分析
Nov 26 Javascript
JS绘制微信小程序画布时钟
Dec 24 Javascript
Angular.js中$resource高大上的数据交互详解
Jul 30 Javascript
微信小程序系列之自定义顶部导航功能
May 21 Javascript
JavaScript将数组转换为链表的方法
Feb 16 Javascript
解决vue页面刷新或者后退参数丢失的问题
Mar 13 #Javascript
解决vue单页使用keep-alive页面返回不刷新的问题
Mar 13 #Javascript
解决vue 路由变化页面数据不刷新的问题
Mar 13 #Javascript
一种angular的方法级的缓存注解(装饰器)
Mar 13 #Javascript
vue 多入口文件搭建 vue多页面搭建的实例讲解
Mar 12 #Javascript
解决vue多个路由共用一个页面的问题
Mar 12 #Javascript
angular5 httpclient的示例实战
Mar 12 #Javascript
You might like
国内咖啡文化
2021/03/03 咖啡文化
PHP4 与 MySQL 数据库操作函数详解
2006/10/09 PHP
PHP递归返回值时出现的问题解决办法
2013/02/19 PHP
不使用php api函数实现数组的交换排序示例
2014/04/13 PHP
PHP GD库生成图像的几个函数总结
2014/11/19 PHP
PHP利用二叉堆实现TopK-算法的方法详解
2017/04/24 PHP
PHP实现深度优先搜索算法(DFS,Depth First Search)详解
2017/09/16 PHP
jquery关于图形报表的运用实现代码
2011/01/06 Javascript
Javascript浅谈之引用类型
2013/12/18 Javascript
使用Meteor配合Node.js编写实时聊天应用的范例
2015/06/23 Javascript
jQuery siblings()用法实例详解
2016/04/26 Javascript
js删除Array数组中指定元素的两种方法
2016/08/03 Javascript
JS类的定义与使用方法深入探索
2016/11/26 Javascript
angularjs实现猜数字大小功能
2020/05/20 Javascript
vue实现动态添加数据滚动条自动滚动到底部的示例代码
2018/07/06 Javascript
Vue 与 Vuex 的第一次接触遇到的坑
2018/08/16 Javascript
jQuery带控制按钮轮播图插件
2020/07/31 jQuery
python自动格式化json文件的方法
2015/03/11 Python
Linux上安装Python的PIL和Pillow库处理图片的实例教程
2016/06/23 Python
python3中的md5加密实例
2018/05/29 Python
django 环境变量配置过程详解
2019/08/06 Python
OpenCV+face++实现实时人脸识别解锁功能
2019/08/28 Python
Python遍历字典方式就实例详解
2019/12/28 Python
Python面向对象程序设计之类和对象、实例变量、类变量用法分析
2020/03/23 Python
Python tornado上传文件的功能
2020/03/26 Python
Django Admin 上传文件到七牛云的示例代码
2020/06/20 Python
谷歌浏览器小字体处理方案即12px以下字体
2013/12/17 HTML / CSS
HTML5 Convas APIs方法详解
2015/04/24 HTML / CSS
HTML5 3D衣服摇摆动画特效
2016/03/17 HTML / CSS
Nip + Fab官网:英国美容品牌
2019/08/26 全球购物
挂科检讨书范文
2014/02/20 职场文书
优秀语文教师事迹
2014/05/18 职场文书
上海世博会口号
2014/06/19 职场文书
80后婚前协议书范本
2014/10/24 职场文书
VUE之图片Base64编码使用ElementUI组件上传
2022/04/09 Vue.js
Golang 入门 之url 包
2022/05/04 Golang