gpt4 book ai didi

javascript - ionic 2 中 promise 函数内的导航

转载 作者:搜寻专家 更新时间:2023-10-30 21:40:41 25 4
gpt4 key购买 nike

我在一个新应用程序中使用 ionic2,我想将我的页面路由到一个从服务器调用 http 请求的 promise 函数中,

我想在 promise 函数中访问 Navcontroller,但无法从 promise 函数内部访问 Navcontroller。promise 函数是 AuthenticationService
中函数的 promise 这是我在 app.component.ts 中的代码:

 import {Component, ViewChild, Inject} from '@angular/core';
import {Platform, NavController} from 'ionic-angular';
import { StatusBar } from 'ionic-native';
import { HomePage } from '../pages/home/home';
import { LoginPage } from '../pages/login/login';
import {Authentication} from '../providers/authentication';

@Component({
template: `<ion-nav #myNav [root]="rootPage"></ion-nav>`,
providers:[Authentication],
})

export class MyApp {


@ViewChild('myNav') public nav : NavController

//rootPage = LoginPage;

constructor(platform: Platform, private auth:Authentication) {
platform.ready().then(() => {
StatusBar.styleDefault();
});

}

ngOnInit() {


this.auth.index()
.then(function (data) {
if(data['flag']==1)
{
this.nav.setRoot(HomePage);
}
else
{
this.nav.setRoot(LoginPage);
}

})

这是错误:

EXCEPTION: Uncaught (in promise): TypeError: Cannot read property 'nav' of null    
TypeError: Cannot read property 'nav' of null.

最佳答案

改变

.then(function (data) {

.then( (data) => {

如果您使用 function 而不是粗箭头语法,您的 this 将不会引用该页面。

我建议您阅读:https://stackoverflow.com/a/20279485/5706293

关于javascript - ionic 2 中 promise 函数内的导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41400671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com