我是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管道,它做…你好→你好
链接管道的文档