我收到一个错误:
类型'Alias []'与类型'Alias'没有共同的属性
这是我的别名
alias: Alias = {
id: 0,
domain_id: 0,
source: '',
destination: ''
};
这是我的Alias模型
export interface Alias {
id?: number;
domain_id?: number;
source?: string;
destination?: string;
}
我在这符合this.alias = res
的地方出错 ngOnInit() {
const params = this.activedRoute.snapshot.params.id;
console.log('parms '+params);
if (params.id) {
this.aliasesService.getAlias(params.id).subscribe(
res => {
this.alias = res;
this.edit = true;
},
err => console.error(err)
);
}
}
这是我的服务
getAlias(id: string): Observable<Alias[]> {
return this.http.get<Alias[]>(`${this.API_URI}/aliases/${id}`);
}
我该如何解决?
答案 0 :(得分:2)
更改此:
getAlias(id: string): Observable<Alias[]> {
return this.http.get<Alias[]>(`${this.API_URI}/aliases/${id}`);
}
对此:
//I guess this api returns a single Alias
getAlias(id: string): Observable<Alias> {
return this.http.get<Alias>(`${this.API_URI}/aliases/${id}`);
}
编辑:
顺便说一下,您可以像这样简化代码
发件人:
alias: Alias = {
id: 0,
domain_id: 0,
source: '',
destination: ''
};
收件人:
alias: Alias = {} as Alias; //it's the same thing