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 控制小数位数的实现代码
Aug 02 Javascript
深入领悟JavaScript中的面向对象
Nov 18 Javascript
Node调试工具JSHint的安装及配置教程
May 27 Javascript
最精简的JavaScript实现鼠标拖动效果的方法
May 11 Javascript
vue loadmore组件上拉加载更多功能示例代码
Jul 19 Javascript
js基于FileSaver.js 浏览器导出Excel文件的示例
Aug 15 Javascript
详解jQuery中的easyui
Sep 02 jQuery
vue实现简单的星级评分组件源码
Nov 16 Javascript
前端开发之便利店收银系统代码
Dec 27 Javascript
JS运算符优先级与表达式示例详解
Sep 04 Javascript
Javascript新手入门之字符串拼接与变量的应用
Dec 03 Javascript
原生JavaScript实现简单五子棋游戏
Jun 28 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
星际争霸任务指南——神族
2020/03/04 星际争霸
php将数据库导出成excel的方法
2010/05/07 PHP
PHP过滤★等特殊符号的正则
2014/01/27 PHP
PHP SOCKET编程详解
2015/05/22 PHP
php将html转成wml的WAP标记语言实例
2015/07/08 PHP
ext combox 下拉框不出现自动提示,自动选中的解决方法
2010/02/24 Javascript
通过Jquery遍历Json的两种数据结构的实现代码
2011/01/19 Javascript
JQuery防止退格键网页后退的实现代码
2012/03/23 Javascript
javascript 图片裁剪技巧解读
2012/11/15 Javascript
javascript 实现子父窗体互相传值的简单实例
2014/02/17 Javascript
原生的html元素选择器类似jquery选择器
2014/10/15 Javascript
jQuery向后台传入json格式数据的方法
2015/02/13 Javascript
jQuery插件kinMaxShow扩展效果用法实例
2015/05/04 Javascript
AngularJS  $modal弹出框实例代码
2016/08/24 Javascript
Vue.js每天必学之内部响应式原理探究
2016/09/07 Javascript
详解Angular的双向数据绑定(MV-VM)
2016/12/26 Javascript
vue-scroller记录滚动位置的示例代码
2018/01/17 Javascript
纯JS实现可用于页码更换的飞页特效示例
2018/05/21 Javascript
vue+SSM实现验证码功能
2018/12/07 Javascript
Vue组件的使用及个人理解与介绍
2019/02/09 Javascript
详解可以用在VS Code中的正则表达式小技巧
2019/05/14 Javascript
Vue实现仿iPhone悬浮球的示例代码
2020/03/13 Javascript
使用Vant完成DatetimePicker 日期的选择器操作
2020/11/12 Javascript
[03:07]DOTA2英雄基础教程 冰霜诅咒极寒幽魂
2013/12/06 DOTA
Python socket C/S结构的聊天室应用实现
2014/11/30 Python
Python实现的栈(Stack)
2018/01/26 Python
对python借助百度云API对评论进行观点抽取的方法详解
2019/02/21 Python
Python制作数据预测集成工具(值得收藏)
2020/08/21 Python
PyCharm设置注释字体颜色以及是否倾斜的操作
2020/09/16 Python
BONIA波尼亚新加坡官网:皮革手袋,鞋类和配件
2016/08/25 全球购物
保险专业大专生求职信
2013/10/26 职场文书
学前教育毕业生自荐信
2013/10/29 职场文书
大学生个人求职信例文
2014/07/07 职场文书
Vue和Flask通信的实现
2021/05/19 Vue.js
Python 快速验证代理IP是否有效的方法实现
2021/07/15 Python
MySQL学习之基础命令实操总结
2022/03/19 MySQL