Vyhledávání na webu

javascript - Vlastní pipe nebyla správně importována


Musím iterovat přes klíče objektu uvnitř šablony, tak jsem vytvořil tento vlastní pipe:

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

@Pipe({name: "keys"})
export class KeysPipe implements PipeTransform {
  transform(value: any, args?: any[]): any[] {
    return Object.keys(value);
  }
}

A uvnitř mé stránky je to importováno následovně:

import {KeysPipe} from "../../pipes/keys-pipe";
import {Component} from '@angular/core';
@Component({
  selector: 'page-history',
  templateUrl: 'history.html',
  pipes: [ KeysPipe ]
})
export class HistoryPage {}

Ale když stavím projekt, objeví se tato chyba:

Argument typu '{ selector: string; templateUrl: string; pipes: typeof KeysPipe[]; }' nelze přiřadit k parametru typu 'Component'. Literál objektu může specifikovat pouze známé vlastnosti a 'pipes' neexistuje v typu 'Component'.

Máte nějaký nápad? Nezaregistroval jsem to v app.module.ts ani v app.component.ts. Díky.

Odpověď č. 1

Už nějakou dobu neexistují v @Component() žádné pipes.

Teď je

@NgModule({
  declarations: [ KeysPipe ]

Viz také Výběr založený na výčtu v Angular2

Související články