我可以在Angular中使用Typescript从Pipe中调用Pipe吗?



我是Angular和Typescript世界的新手。我目前正在与以下管道代码作斗争:已经有一个管道检查是否应该启用object.struktur.id。现在我要用一个循环来做。我只是从另一个管道复制了代码,并将值更改为' I ',以便它可以迭代。
我不知道为什么这不起作用。这就是为什么我想知道我是否可以直接从这个管道调用另一个管道,并给出object[i].struktur.id作为参数。这可能吗?

transform(group: any[]): boolean {
let probe;
for(let i=0; i<group.length;i++){
combineLatest([
this.iqsService.darfBogenBearbeiten$,
this.iqsService.enabledStateInbearbeitung$.pipe(
map(enabledState => enabledState[group[i].struktur.id] != null ? enabledState[group[i].struktur.id] : true),
distinctUntilChanged()
),
this._erhebungsService.istArchivierteErhebung$
]).pipe(
map(([darfBearbeiten, strukturEnabled, istArchivierteErhebung]) => {
if (!darfBearbeiten || istArchivierteErhebung) {
probe= false;
}
probe= strukturEnabled;
})
);
}
return probe;
}

是的,你可以在其他管道中调用pipe,只需初始化管道并对其调用transform

let pipe = new YourPipeClass();
let newValue = pipe.transform(value, args);

大多数人不会在管道中调用管道,而是像这样链接管道:

<div>{{ 'HELLO' | lowercase | titlecase }}</div>

给了:

你好

它首先应用小写管道,它做…你好→你好

然后应用titlecase管道,它做…你好→你好

链接管道的文档

最新更新