【发布时间】:2020-11-29 16:01:06
【问题描述】:
我刚开始学习ionic 2,所以我正在尝试制作新页面并从主页导航到关于页面。
当我尝试使用this.navCtrl.push('AboutPage')时,它显示“导航控制器上不存在推送属性”。通过在控制台上运行以下代码显示错误“无法读取未定义的属性推送” .
我也试过this.navCtrl.navigateforward() 没有任何效果。我不知道代码有什么问题。
home.ts
import { Component} from '@angular/core';<br/>
import { NavController } from '@ionic/angular';<br/>
import { AboutPage } from '../about/about.page';<br/>
import { AboutPageModule } from '../about/about.module';<br/>
@Component({<br/>
selector: 'app-home',<br/>
templateUrl: 'home.page.html',<br/>
styleUrls: ['home.page.scss'],<br/>
})<br/>
export class HomePage {<br/>
nav: any;<br/>
constructor( public navCtrl: NavController) {}<br/>
next(){<br/>
this.nav.push(AboutPage);}} <br/>
**home.html**<br/>
<ion-header [translucent]="true"><br/>
<ion-toolbar><br/>
<ion-title><br/>
welcome<br/>
</ion-title><br/>
</ion-toolbar><br/>
</ion-header><br/>
<ion-content> <br/>
<ion-button (click)= "next()"> next </ion-button></br>
</ion-content></br>
**app.module.ts**</br>
import { NgModule } from '@angular/core';</br>
import { BrowserModule } from '@angular/platform-browser';</br>
import { RouteReuseStrategy } from '@angular/router';</br>
import { IonicModule, IonicRouteStrategy } from '@ionic/angular';</br>
import { SplashScreen } from '@ionic-native/splash-screen/ngx';</br>
import { StatusBar } from '@ionic-native/status-bar/ngx';</br>
import { AppComponent } from './app.component';</br>
import { AppRoutingModule } from './app-routing.module';</br>
import { AboutPage } from './about/about.page';</br>
@NgModule({</br>
declarations: [AppComponent, AboutPage ],</br>
entryComponents: [ AboutPage ],</br>
imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule],</br>
providers: [</br>
StatusBar,</br>
SplashScreen,</br>
{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy }</br>
],</br>
bootstrap: [AppComponent]</br>
})</br>
export class AppModule {}</br>
`
【问题讨论】:
-
你用的是什么离子版本?? ionic 4+ 使用 Angular 路由器。例如:
this.router.navigate(['/home']);
标签: angular typescript ionic-framework ionic2 ionic3