angular - Var man ska placera hjälpfunktioner i angular2 som är tillgängliga i mallar


Jag har några enkla "rena" hjälpverktygsfunktioner i min app som jag vill hålla på ett ställe. Problemet är att jag kan importera dem i mina komponenter genom att använda:

import { utilities } from '../shared/utilities'

Dock är dessa hjälp-funktioner/metoder inte tillgängliga i mina mallfiler (eftersom de endast är bundna till komponentklassen). Jag måste skapa en alias för dessa funktioner i min komponent för att kunna använda dem. Finns det ett bättre sätt att göra detta?

Svar #1

Jag tycker att du borde kunna använda verktygen i mallen om du injicerar den i din controller. Något i stil med detta :

import { Utilities } from './shared/utils';

@Component({
    ....
    ....
})
export class ExampleComponent {
    constructor(public util: Utilities) { }
}

I din mall bör du kunna använda util.your_function

Uppdatering :

export class ExampleComponent {
    constructor(public util: Utilities) { }

    get staticMethod1() { return Utilities.staticMethod1(); }
}

Relaterade artiklar