我正在尝试将i18n(与ngx-translate集成)添加到我的侧边菜单中,这是一个常量对象,里面的每个项目都
我尝试导入i18n服务,然后将其声明为变量以在对象内部使用它:
import { Menu } from './menu.model';
import { TranslateService } from '@ngx-translate/core';
let translate: TranslateService;
export const verticalMenuItems = [
new Menu(1, translate.instant('MENU.DASHBOARD'), '/', null, 'dashboard', null, false, 0),
]
它不会被识别为抛出错误的服务
无法读取未定义的属性“即时”
我在这里做什么错了?
答案 0 :(得分:1)
您只是在声明一个TranslateService
类型的变量,该变量尚未初始化。您实际上没有转换的服务实例。我建议将注入服务到您要声明常量的组件的构造函数中。我会做这样的事情。
export class ExampleClass {
verticalMenuItems: any;
constructor(private translate: TranslateService) {
this.verticalMenuItems =
[new Menu (1, translate.instant('MENU.DASHBOARD'), '/', null, 'dashboard', null, false, 0);
}
}