在Angular中工作了一段时间之后,我意识到在route的数据订户中没有设置任何数据类型。因此,例如,使用以下路由的配置:
{
path: '',
data: {
name: 'Bob' // type: string
},
resolve: {
cars: CarsResolver // resolves to type: Car[]
}
}
在订阅路线数据时,我们无法知道期望的数据类型
ngOnInit(): void {
this.route.data.subscribe(data =>
data.cars // type: any
// data is a type of Data, unfortunately there's nothing like this.route.data<type>
});
}
这对于智能感知正常工作很有用,当然也可以在编译时捕获各种错误。当前有什么方法可以指定数据结构?预先谢谢你。