0

我需要应用管道(转换)来格式化通过 API 提供的动态内容。数据实际上是通过自定义格式化程序应用的,该格式化程序本质上绑定到元素上的 [innerHTML]。问题是我附加的管道不按要求适用。

例如,我收到以下值AB123456D(英国,国民保险号),我想像这样显示它AB 12 34 45 D

强加给我的限制是数据被格式化并通过使用 [innerHTML] 的绑定插入到模板中。

// template
<span *ngSwitchWhen="'html'" [innerHTML]="display"></span>


// helper function
display(): string {
  ...
  return this.column.formatter.replace(/\{([^}]*)\}/g, (match, id) => _.get(this.data, id));
  ...
}

// formatter looks like this and my pipe's name is `ni`
<div>{niNum} | ni</div>

渲染时,我看到以下内容...

AB123456D | ni

当我想/期望看到...

AB 12 34 45 D

任何想法如何实现这一点,或者是否有可能?

4

1 回答 1

1

Angular 不处理[innerHtml]="..."以任何方式添加的内容。它只是按原样传递给浏览器。

于 2016-05-03T13:50:22.237 回答