我试着做一个单板机,从数据库到Init,一个配置数组(ID,Titel)。
我的问题是在初始化服务之前调用IDtoStringpipe。
也许你能给我个提示。
诚挚的问候,
斯特凡
发布于 2022-06-10 13:13:55
在第一次,这是服务。它应该调用数据库,存储数据,然后我将处理数组
export class SCBuchungsartenService {
Buchungsarten: Ibuchungsart[] = [];
constructor( private http: HttpClient){
}
async init(){
const data = await this.http.get<any>('http://localhost:8080/config/Buchungsarten')
.toPromise();
this.Buchungsarten = data;
}
public getBuchungsarten(){
return this.Buchungsarten;
}
public getBuchungsartAZ(): Ibuchungsart[]{
return this.Buchungsarten.filter(a => a.AUSWAHL == true)
}
public getBuchungsartenName(id: number): string {
return this.Buchungsarten.filter(a => a.ID == id)[0]?.Bezeichnung!
}
}
之后,管道应该使用函数getBuchungsartenName(id)。
@Pipe({
name: 'BaToString'
})
export class BuchungsartStringPipe implements PipeTransform {
public buchungsarten?: Ibuchungsart[];
constructor(private BuchungsartService: SCBuchungsartenService){
}
transform(value: number| undefined): String {
var returnValue: String = "Unbekannt";
if(value !== undefined){
let name = this.BuchungsartService.getBuchungsartenName(value);
if (name!==undefined && name.length > 0) {
return name
}
}
return returnValue;
}
}
但是,当管道在Init上启动时,Array是空的。
https://stackoverflow.com/questions/72574472
复制相似问题