Angular 是否可以应用本身包含条件的条件管道?

Angular 是否可以应用本身包含条件的条件管道?,angular,pipe,conditional-statements,angular7,angular-material-7,Angular,Pipe,Conditional Statements,Angular7,Angular Material 7,我有一个下拉列表(输入+自动完成),可以在其中键入字符串或从下拉列表中选择对象。 我只想在输入中的值为string类型时使用管道。如果用户从下拉列表中选择一个值,我需要删除自定义管道 我想应用自定义管道选项的类型。名称为字符串。如果类型为Object,则将其删除 尝试了链接,但没有成功 实际代码: <mat-option *ngFor="let option of sortedOptions" [innerHTML]="option?.name | highlight :

我有一个下拉列表(输入+自动完成),可以在其中键入字符串或从下拉列表中选择对象。 我只想在输入中的值为string类型时使用管道。如果用户从下拉列表中选择一个值,我需要删除自定义管道

我想应用自定义管道选项的类型。名称为字符串。如果类型为Object,则将其删除

尝试了链接,但没有成功

实际代码:

<mat-option *ngFor="let option of sortedOptions"
       [innerHTML]="option?.name | highlight : userControl.value" >

您可以在组件上创建帮助器方法,如下所示:

isString(val) { return typeof val === 'string'; }
{{ isString(option.name) ? (option?.name | highlight : userControl.value)  : option.name }}
现在,您可以这样检查您的状况:

isString(val) { return typeof val === 'string'; }
{{ isString(option.name) ? (option?.name | highlight : userControl.value)  : option.name }}

这是为您工作的指南

谢谢您指路。但是当类型为String时,它不会突出显示。@Miskomal我更新了我的答案并添加了stackblitz演示,请在那里查看它的实际操作