Angular ionic2-组件进入其他页面
我有一个组件Angular ionic2-组件进入其他页面,angular,ionic2,Angular,Ionic2,我有一个组件ProcessStep,它有自己的ts和html文件: import { Component } from '@angular/core'; import { NavController } from 'ionic-angular'; @Component({ selector: 'page-process-step', templateUrl: 'process-step.html' }) export class ProcessStep { totalsteps:num
ProcessStep
,它有自己的ts
和html
文件:
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
@Component({
selector: 'page-process-step',
templateUrl: 'process-step.html'
})
export class ProcessStep {
totalsteps:number;
steparray:Array<boolean>;
currentstep = 1;
constructor(public navCtrl: NavController) {}
ionViewDidLoad() {
console.log('Hello ProcessStep Page');
}
populateStep(n:number){
for(var i =1; i<=n ; i++){
this.steparray.push(false);
}
}
}
我有一个错误:
异常:./Login类Login\u主机中出错-内联模板:0:0
原因:ProcessStep没有提供程序
如何为
ProcessStep
准备提供程序?如果ProcessStep
是其他组件使用的组件,您应该通过@ViewChild
获得对它的引用
import { ViewChild, AfterViewInit } from '@angular/core';
class Login implements AfterViewInit {
@ViewChild(ProcessStep) step: ProcessStep;
ngAfterViewInit() {
step.populateStep(5);
}
}
在添加到
@NgModule.providers
:>NavController没有提供程序后,我收到新错误!如何使用共享服务?供应商也是这样吗ProcessStep
是一个具有少量自定义功能的视图组件。我遵循了@huiting的答案,它是有效的。但是,由于某些原因,ngFor
不起作用。
import { ViewChild, AfterViewInit } from '@angular/core';
class Login implements AfterViewInit {
@ViewChild(ProcessStep) step: ProcessStep;
ngAfterViewInit() {
step.populateStep(5);
}
}