typescript – 如何在Angular 2中将“String”值转换为“Type”

我想在离子2应用程序中创建一个侧面菜单,其中页面导航组件放在一个外部json文件中,该文件是在menuService.getMenu函数的帮助下获取的.

MY JSON结构:

"menu":[
        {
          "title":"Grid","component":"GridPage"
        }
      ]

我的Ts:

this.menuService.getMenu().then((menu) => {
    this.menu = menu;
    });

    openPage(menu) {
      console.log("menu",menu.component);
      nav.setRoot(menu.component);
    }

控制台日志打印字符串GridPage.我尝试使用Type作为Type(menu.component)进行转换.但我在控制台中的结果是一个具有匿名名称函数.有人请帮助我将json字符串转换为组件“Type”以便导航工作.

我想有一种方法可以通过字符串获取类的类型,但我不知道(我不使用TS).一个简单的解决方法

从字符串到类型创建一个映射

classes = {
  'MyClass1': MyClass1,'MyClass2': MyClass2,'Grid': Grid
}

然后只看一下类型

class['Grid']

缺点是您需要提前知道所有支持的类.

相关文章

ANGULAR.JS:NG-SELECTANDNG-OPTIONSPS:其实看英文文档比看中...
AngularJS中使用Chart.js制折线图与饼图实例  Chart.js 是...
IE浏览器兼容性后续前言 继续尝试解决IE浏览器兼容性问题,...
Angular实现下拉菜单多选写这篇文章时,引用文章地址如下:h...
在AngularJS应用中集成科大讯飞语音输入功能前言 根据项目...
Angular数据更新不及时问题探讨前言 在修复控制角标正确变...