我想在我的类中以静态方法使用 TranslateService(Angular ngx-translate) 。
export class ClassName {
static CONFIG = {
selectList: [
{ name: 'name', label: TranslateService.instant('my.i18n.key') }, // i need something like this
]
}
Run Code Online (Sandbox Code Playgroud)
或者像这样:
const translate = TranslateService reference from the root(global scope)
export class ClassName {
static CONFIG = {
selectList: [
{ name: 'name', label: translate.instant('my.i18n.key') },
]
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?任何想法?
这段代码工作正常(没有 ngTemplateOutlet):
<mat-form-field [formGroup]="formGroup">
<input matInput type="text"
[formControlName]="fControlName"
>
<ng-container *ngIf="isShowErrors()" ngProjectAs="mat-error">
<ng-container *ngFor="let error of showSMErrors" >
<mat-error>{{ error.message }}</mat-error>
</ng-container>
</ng-container>
</mat-form-field>
Run Code Online (Sandbox Code Playgroud)
但是这段代码无法正常工作(使用 ngTemplateOutlet),为什么?(就像普通的红色文本一样查看 error.message):
<mat-form-field [formGroup]="formGroup">
<input matInput type="text"
[formControlName]="fControlName"
>
<ng-container *ngTemplateOutlet="showErrorsTemplate"></ng-container>
</mat-form-field>
<ng-template #showErrorsTemplate ngProjectAs="mat-error">
<ng-container *ngIf="isShowErrors()" >
<ng-container *ngFor="let error of showSMErrors" >
<mat-error>{{ error.message }}</mat-error>
</ng-container>
</ng-container>
</ng-template>
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?谢谢!