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 相关文章推荐
location.href用法总结(最主要的)
Dec 27 Javascript
Javascript连接多个数组不用concat来解决
Mar 24 Javascript
JavaScript设计模式之装饰者模式介绍
Dec 28 Javascript
JS实现很酷的水波文字特效实例
Feb 26 Javascript
概述javascript在Google IE中的调试技巧
Nov 24 Javascript
微信小程序 欢迎界面开发的实例详解
Nov 30 Javascript
JS生成一维码(条形码)功能示例
Jan 19 Javascript
Bootstrap table使用方法总结
May 10 Javascript
jQuery实现新闻播报滚动及淡入淡出效果示例
Mar 23 jQuery
通过jquery获取上传文件名称、类型和大小的实现代码
Apr 19 jQuery
如何理解Vue的v-model指令的使用方法
Jul 19 Javascript
jQuery+ThinkPHP实现图片上传
Jul 23 jQuery
解决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
Laravel框架中扩展函数、扩展自定义类的方法
2014/09/04 PHP
PHP时间和日期函数详解
2015/05/08 PHP
php使用timthumb生成缩略图的方法
2016/01/22 PHP
Yii+MYSQL锁表防止并发情况下重复数据的方法
2016/07/14 PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
2017/03/19 PHP
线路分流自动跳转代码;希望对大家有用!
2006/12/02 Javascript
JavaScript Cookie的读取和写入函数
2009/12/08 Javascript
从零开始学习jQuery (八) 插播:jQuery实施方案
2011/02/23 Javascript
Jquery事件的连接使用示例
2013/06/18 Javascript
jquery浏览器滚动加载技术实现方案
2014/06/03 Javascript
js判断文本框剩余可输入字数的方法
2015/02/04 Javascript
jQuery代码实现发展历程时间轴特效
2015/07/30 Javascript
JavaScript基础重点(必看)
2016/07/09 Javascript
nodejs async异步常用函数总结(推荐)
2017/11/17 NodeJs
Vue.js项目中管理每个页面的头部标签的两种方法
2018/06/25 Javascript
详解webpack自定义loader初探
2018/08/29 Javascript
React Hooks的深入理解与使用
2018/11/12 Javascript
用Electron写个带界面的nodejs爬虫的实现方法
2019/01/29 NodeJs
vue中 数字相加为字串转化为数值的例子
2019/11/07 Javascript
JS变量提升原理与用法实例浅析
2020/05/22 Javascript
基于vue 动态菜单 刷新空白问题的解决
2020/08/06 Javascript
编写Python脚本批量下载DesktopNexus壁纸的教程
2015/05/06 Python
举例讲解Python中的list列表数据结构用法
2016/03/12 Python
tensorflow中next_batch的具体使用
2018/02/02 Python
详解python和matlab的优势与区别
2019/06/28 Python
python实现从本地摄像头和网络摄像头截取图片功能
2019/07/11 Python
python实现简单井字棋游戏
2020/03/04 Python
Python求区间正整数内所有素数之和的方法实例
2020/10/13 Python
环境工程与管理大学毕业生求职信
2013/10/02 职场文书
普通院校学生的自荐信
2013/11/27 职场文书
大学生工作推荐信范文
2013/12/02 职场文书
企业活动策划方案
2014/06/02 职场文书
校运动会广播稿(100篇)
2014/09/12 职场文书
召开会议通知范文
2015/04/15 职场文书
幼师必备:幼儿园期末教师评语50条
2019/11/01 职场文书
详解Alibaba Java诊断工具Arthas查看Dubbo动态代理类
2022/04/08 Java/Android