![](/img/trans.png)
[英]Ionic 2, Using Angular 2 Pipe breaks on iOS—“Can't find variable: Intl”
[英]Ionic-3 Can't find Pipe
我剛剛升級到Ionic 3.0.1
所以我可以使用LazyLoading
,因為我不能使用我的自定義Pipes
:
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;
}
}
在app.module.ts
我已將其添加到聲明中:
@NgModule({
declarations: [
........,
StripHTML
],
...
現在當我試圖在html
模板中使用它時出錯:
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
這里有什么我想念的嗎?
所以我通過制作一個PipesModule
修復這個問題,我將自定義Pipes
導入到其中,然后將其導入頁面module.ts
中我想要使用它
import { NgModule } from '@angular/core';
import { StripHTML } from './strip-html';
@NgModule({
declarations: [
StripHTML,
],
imports: [
],
exports: [
StripHTML
]
})
export class PipesModule { }
然后在頁面中| HomePage
為例:
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 { }
它確實工作正常,不確定這是否正確,但它工作正常,如果有更好的方法請告訴我...謝謝!
你需要做的就是將PipesModule (下面的代碼片段12) 導入到你的每個page.module.ts(即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 { }
這對我有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.