首页 > 解决方案 > 如何使用'es6'样式在打字稿中动态设置类型?

问题描述

寻找一种巧妙的方式来构建我的代码(ES6 风格)。没有 if 语句。

我的 Angular 组件 app-slider 有一个属性,该属性使组件能够从父级获取数据(使用 @Input);进入 app-slider 组件的值是 wither 'city' 或 'event'。

两个子组件

<app-slider [context]="'city'"></app-slider>
<app-slider [context]="'event'"></app-slider>

两者的目的是相同的——它们显示一些信息——关于城市或事件。

基于值“城市”或“事件”,我想调用我的 mongo db 来获取相应的数据。

我可以轻松地在构造函数中调用我的数据库层并调用 getCities() 或 getEvents()。我可以使用 if 语句。

但是,如果没有 if 语句,是否有可能实现 - 一种更干净的方式?

再次感谢

标签: javascripttypescript

解决方案


你能创建字典吗: dict = { event: Event, city: City} 然后 var data = dict[stringType]; // 事件或城市


推荐阅读