/ / Nemožno použiť model v šablóne komponentu - uhlové

Model v šablóne komponentu nemožno použiť - uhlový

Mám nasledujúcu triedu:

export class Constants {

public static cREQUESTED_SERVICE: string = "RequestedService";
}

a mám nasledujúcu šablónu (Service.component.html) komponenty (Service.component.ts):

<label>{{Constants.cREQUESTED_SERVICE}}</label>

Vo vnútri som už importoval (konštanty) triedu (Service.component.html). Problém je: Štítok sa zobrazuje prázdny a v konzole sa zaznamená táto chyba:

Subscriber.js: 240 Uncaught TypeError: Nedá sa načítať vlastnosť „cREQUESTED_SERVICE“ nedefinovaného

odpovede:

3 pre odpoveď č. 1

na serveri Service.component.ts vytvorte inú metódu získavania, ako je táto

import { Constants } from "your/path/to/this/file/Constants";

export class ServiceComponent {
get ConstantsClass() {
return Constants;
}
}

v šablóne

<label>{{ConstantsClass.cREQUESTED_SERVICE}}</label>

3 pre odpoveď č. 2

Kedykoľvek používate konštanty, mali by ste ich používať ako injekčné (), pretože zostávajú rovnaké počas celého životného cyklu aplikácie (singleton) rovnako ako ktorýkoľvek iný poskytovateľ.

@Injectable()
export class Constants {

public readonly cREQUESTED_SERVICE: string = "RequestedService";
}

Vo vašom komponente by ste mali vstreknúť do konštruktora a použiť

constructor(private cons : Constants){}

this.cons.cREQUESTED_SERVICE