Navonic通过的数据在Ionic2

时间:2017-03-08 11:47:11

标签: angular typescript ionic2 ionic3

在登录页面中,应用程序将获得UDIToken,如果登录/注册成功,则会传递给MapPage:

if (Token != "-1")
                   {                  
                this.navCtrl.push(MapPage, {UDI: this.UDI, Token: Token})
                this.navCtrl.setRoot(MapPage);
                this.navCtrl.popToRoot;
popToRoot之前的构造方法中的

console.log(this.UDI, this.Token);显示了它们的值,但之后它们是未定义的。

this.UDI=this.params.get('UDI');
this.Token=this.params.get('Token');    
console.log(this.UDI, this.Token);

更新1:结果 enter image description here

正如您在转到地图页面之前所看到的那样,它显示了正确的传递值

map.ts:39 2NYIRWI0N8Z6HW2M3HWR XWRU441NHH0B9GSHVC3P

但导航根页面更改后

map.ts:39 undefined undefined

2 个答案:

答案 0 :(得分:1)

您的键看起来像变量而不是字符串文字。因此,您的键和值都是UDI和令牌的值。

尝试使用引号。

        this.navCtrl.setRoot(MapPage, {'UDI': this.UDI, 'Token': Token})

此外,您同时使用params push,然后使用没有参数的setRoot。您的地图页面设置为root ,没有参数。 setRoot函数也需要参数

答案 1 :(得分:1)

  

因为地图页面是主页面而且不应该是后退按钮。

就像@suraj所说,你用参数推送视图,然后以root身份设置同一页面,但没有参数。这不正确。如果您不想显示后退箭头,只需将页面设置为root

即可
.scan()