未调用 Angular2 组件构造函数
Angular2 component constructor didn't called
我的演示应用程序组件的构造函数未在应用程序启动时调用:
演示组件:
@Component({
selector: 'app-demo-page',
templateUrl: './index.component.html',
styleUrls: ['./index.component.css']
})
export class DemoComponent implements OnInit {
constructor() {
console.log('constructor run');
}
ngOnInit() {
console.log('oninit run');
}
}
路由模块:
const routes: Routes = [
{
path: 'demo',
component: DemoComponent ,
resolve: {
data: DemoResolverService
}
},
{
path: '',
component: AppComponent
}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule {}
解析器服务:
@Injectable({
providedIn: 'root'
})
export class DemoResolverService implements Resolve<SomeData> {
constructor(private logic: demoService) {}
resolve(): Observable<SomeData> {
console.log('dataresolver run');
return this.logic.getAll();
}
}
解析器服务构造函数 运行 成功,并且在导航之前也调用了它。
但是组件不是构造函数不是运行ning。
知道为什么它停止工作吗?
谢谢
在app.component.html
中添加<router-outlet></router-outlet>
Router-outlet in Angular 用作占位符,用于根据激活的组件或当前路由状态动态加载不同的组件
我的演示应用程序组件的构造函数未在应用程序启动时调用:
演示组件:
@Component({
selector: 'app-demo-page',
templateUrl: './index.component.html',
styleUrls: ['./index.component.css']
})
export class DemoComponent implements OnInit {
constructor() {
console.log('constructor run');
}
ngOnInit() {
console.log('oninit run');
}
}
路由模块:
const routes: Routes = [
{
path: 'demo',
component: DemoComponent ,
resolve: {
data: DemoResolverService
}
},
{
path: '',
component: AppComponent
}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule {}
解析器服务:
@Injectable({
providedIn: 'root'
})
export class DemoResolverService implements Resolve<SomeData> {
constructor(private logic: demoService) {}
resolve(): Observable<SomeData> {
console.log('dataresolver run');
return this.logic.getAll();
}
}
解析器服务构造函数 运行 成功,并且在导航之前也调用了它。 但是组件不是构造函数不是运行ning。 知道为什么它停止工作吗? 谢谢
在app.component.html
中添加<router-outlet></router-outlet>
Router-outlet in Angular 用作占位符,用于根据激活的组件或当前路由状态动态加载不同的组件