编辑:我想基本上扩展 ngx-translate 提供的管道,如下所示:
import { Pipe, PipeTransform } from '@angular/core';
import { TranslatePipe } from "@ngx-translate/core";
@Pipe({
name: 'msg'
})
export class MsgPipe extends TranslatePipe implements PipeTransform {
transform(value: any, args: any[]): any {
return super.transform(value, args)
}
}
这仅在 pure 设置为 false 时有效,因此我认为 ngx-translate 的加载器尚未准备好。有没有办法检查?这样我可以保持管道纯净和工作。
原帖(不相关):
我创建了一个简单地调用 translateService.instant 并返回结果的管道。
@Pipe({
name: 'msg',
pure: false
})
export class MsgPipe implements PipeTransform {
constructor(private translateService: TranslateService) {}
transform(value: any, args: any[]): any {
console.log('checked. val = ', value)
return this.translateService.instant(value, args);
}
}
如果不将此标记为纯:false,则管道仅返回该值。有了它(我认为文件加载器已经完成)。
我的问题是每个管道被调用了大约 8 次,我可以通过更改检测来告诉管道在检索到值后停止检查吗?