Javascript 从硬编码数据到服务实时数据的角度下拉切换

Javascript 从硬编码数据到服务实时数据的角度下拉切换,javascript,arrays,angular,typescript,Javascript,Arrays,Angular,Typescript,我有一个角度5下拉菜单,可以很好地处理硬编码数据,但我需要将其切换到实时数据。问题是实时数据是纯数组 这就是目前有效的方法 HTML <select... <option *ngFor="let activityType of activityTypes" [ngValue]="activityType.Id"> {{activityType.Activity}} </option> 然而,这是我的问题,我从服务中提取数据,数据看起来像这个

我有一个角度5下拉菜单,可以很好地处理硬编码数据,但我需要将其切换到实时数据。问题是实时数据是纯数组

这就是目前有效的方法

HTML

<select...
  <option *ngFor="let activityType of activityTypes" [ngValue]="activityType.Id">
        {{activityType.Activity}}
  </option>
然而,这是我的问题,我从服务中提取数据,数据看起来像这个数组

this.activityTypes v["INSERT", "UPDATE"]
                      0: "INSERT"
                      1: "UPDATE"

现在,如何使用数组绑定下拉列表?
显然,我希望将值设置为数组的“0”、“1”。。然后显示(在硬编码示例中是我的活动)我希望它保持“插入”和“更新”…

您可以使用数组索引作为选项的值,使用数据作为标签

<select...
  <option *ngFor="let activityType of activityTypes; let i = index" [ngValue]="i">
        {{activityType}}
  </option>

嗨,你能解释一下吗?如果我在typescript中创建了一个数据类型为的类,并希望设置Id=0,1等等,该怎么办。。和Activity=“Insert”、Update”等…?非常感谢!
<select...
  <option *ngFor="let activityType of activityTypes; let i = index" [ngValue]="i">
        {{activityType}}
  </option>
this.activityTypes = this.activityTypes.map((currElement, index) => {
  let obj = {
    Id: index,
    Activity: currElement
  };
  return obj;
});