tab not known item icon example angular typescript ionic-framework ionic3

angular - not - ionic input



Ionic-3 no puede encontrar la pipa (2)

Lo que debe hacer es simplemente importar el PipesModule (línea 12 en el siguiente fragmento de código) en cada archivo de page.module.ts (es decir, home.moodule.ts) ...

import { NgModule } from ''@angular/core''; import { IonicPageModule } from ''ionic-angular''; import { LoginPage } from ''./login''; import { PipesModule } from ''../../pipes/pipes.module''; @NgModule({ declarations: [ LoginPage, ], imports: [ IonicPageModule.forChild(LoginPage), PipesModule ] }) export class LoginPageModule { }

Esto funcionó para mí.

Acabo de actualizar a Ionic 3.0.1 por lo que puedo usar LazyLoading , y desde entonces no puedo usar mis Pipes personalizados:

import { Pipe, PipeTransform } from ''@angular/core''; @Pipe({ name: ''StripHTML'' }) export class StripHTML implements PipeTransform { transform(value, args) { let striped = value.replace(/(<([^>]+)>)/g, ""); if (args != null) { if (args.split != null) { striped = striped.split(args.split); if (args.index != null) { striped = striped[args.index]; } } } return striped; } }

y en app.module.ts lo he agregado a las declaraciones:

@NgModule({ declarations: [ ........, StripHTML ], ...

Ahora, cuando estoy intentando usarlo en la plantilla html produce un error:

core.es5.js:1085 ERROR Error: Uncaught (in promise): Error: Template parse errors: The pipe ''StripHTML'' could not be found (" <ion-card-content> <ion-card-title style="font-size: 100%"> {{ [ERROR ->]product.title | StripHTML }} </ion-card-title> </ion-card-content> "): ng:///HomeModule/Home.html@33:17

¿Hay algo que me esté perdiendo aquí?


así que solucioné este problema haciendo un PipesModule en el que PipesModule mis Pipes personalizados, luego lo module.ts en el module.ts la página. Quiero usarlo en

import { NgModule } from ''@angular/core''; import { StripHTML } from ''./strip-html''; @NgModule({ declarations: [ StripHTML, ], imports: [ ], exports: [ StripHTML ] }) export class PipesModule { }

y luego en la página | HomePage como ejemplo:

import { NgModule } from ''@angular/core''; import { IonicPageModule } from ''ionic-angular''; import { Home } from ''./home''; import { PipesModule } from ''../../pipes/pipes.module''; @NgModule({ declarations: [ Home, ], imports: [ IonicPageModule.forChild(Home), PipesModule ], exports: [ Home ] }) export class HomeModule { }

y funcionó bien, no estoy seguro si esta es la forma correcta o no, pero funcionó bien, por favor, hágamelo saber si hay una mejor manera ... ¡gracias!