Angular2:找不到自定义管道

前端之家收集整理的这篇文章主要介绍了Angular2:找不到自定义管道前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
内置的管道是工作,但我想要使用的所有自定义管道是相同的错误

the pipe ‘actStatusPipe’ could not be found

[ERROR ->]{{data.actStatus | actStatusPipe}}

我已经尝试了两种方式,在app.module的声明中声明:

app.module.ts:

import {ActStatusPipe} from '../pipe/actPipe'

@NgModule({
    declarations: [
        AppComponent,HomePage,ActivitiesList,ActStatusPipe
    ],...
})

或使用其他模块来声明和导出我所有的管道:
//管

import {ActStatusPipe} from "./actPipe"

@NgModule({
    declarations:[ActStatusPipe],imports:[CommonModule],exports:[ActStatusPipe]
})

export class MainPipe{}

并将其导入到app.module中.

//pipe
import {MainPipe} from '../pipe/pipe.module'

@NgModule({
    declarations:[...],imports:[...,MainPipe],})

但是没有一个在我的应用程序中工作.

这是我的管道代码

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

@Pipe({
    name:'actStatusPipe'
})
export class ActStatusPipe implements PipeTransform{
    transform(status:any):any{
        switch (status) {
            case 1:
                return "UN_PUBLISH";
            case 2:
                return "PUBLISH";
            default:
                return status
        }
    }
}

我认为这与文件大致相同(事实上,我刚刚从文档中复制并进行了一些修改)

而我的angular2的版本是2.1.

在我的应用程序中会尝试许多可以在stackOverflow和google中搜索解决方案,但是它们不起作用.

这让我很困惑,谢谢你的回答!

看到这是为我工作.

ActStatus.pipe.ts

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

@Pipe({
  name:'actStatusPipe'
})
export class ActStatusPipe implements PipeTransform{
  transform(status:any):any{
    switch (status) {
      case 1:
        return "UN_PUBLISH";
      case 2:
        return "PUBLISH";
      default:
        return status
    }
  }
}

主pipe.module.ts

import { NgModule } from '@angular/core';
import {CommonModule} from "@angular/common";

import {ActStatusPipe} from "./ActStatusPipe.pipe";

@NgModule({
  declarations:[ActStatusPipe],exports:[ActStatusPipe]
})

export class MainPipe{}

app.module.ts

@NgModule({
  declarations: [...],imports: [...,providers: [...],bootstrap: [AppComponent]
})

猜你在找的Angularjs相关文章