在 Ionic 中去除 HTML 标签?

Osh*_*rth 2 typescript ionic-framework ionic3 angular

使用 ionic 3 我从 wordpress api 获取了一些数据,然后在应用程序 UI 上显示相同的数据。除了内容中包含的 HTML 标签外,一切似乎都正常。html 标签也被打印出来。我参考了一些建议使用以下代码的资源:-

`var app = angular.module('myHDApp', []);

    app.filter('removeHTMLTags', function() {

    return function(text) {

        return  text ? String(text).replace(/<[^>]+>/gm, '') : '';

};

});
Run Code Online (Sandbox Code Playgroud)

我已经在我的 .ts 代码中实现了上述功能,但它似乎对我不起作用,因为我仍然在内容中获得 HTML 标签。

Gow*_*ham 6

您发现的是 ionic v1。在 ionic 3 中,您必须先创建一个管道。

在你的 cli 中,

ionic g pipe removehtmltags
Run Code Online (Sandbox Code Playgroud)

您可以在 src/pipes 下找到新创建的管道。现在在您的removehtmltags.ts 中

import { Pipe, PipeTransform } from '@angular/core';    

@Pipe({
  name: 'removehtmltag',
})
export class RemovehtmltagPipe implements PipeTransform {
  /**
   * Takes a value and makes it lowercase.
   */
  transform(value: string) {
           if(value){
               var result = value.replace(/<\/?[^>]+>/gi, ""); //removing html tag using regex pattern
              return result;
           }
           else{}


  }
}
Run Code Online (Sandbox Code Playgroud)

你现在可以像这样在你的 html 文件中使用这个管道,

<p>{{yourData | removehtmltag}}</p>
Run Code Online (Sandbox Code Playgroud)