私は角2の上に座っているイオン2を使用しています。私はアイテムの配列を作成する必要があります。私はその配列にどれだけ多くのアイテムが入るのか分かりません。Typescriptを使用してダイナミックキーで配列を定義するにはどうすればよいですか?
import { Component } from '@angular/core';
import { VgAPI } from 'videogular2/core';
@Component({
selector: 'page-class',
templateUrl: 'class.html'
})
export class ClassPage {
api: any[];
constructor(...){}
// Load API when videos are ready
onPlayerReady(api: VgAPI, i: any) {
this.api[i] = api;
}
}
onPlayerReady
が呼び出されたときに、私の見解をintializeでビデオプレーヤー:ここ
i
は、そのプレーヤーのIDです(0,1,2、...)。私は、次の取得、残念ながら
this.api[0] = VgAPI (of player 1)
this.api[1] = VgAPI (of player 2)
this.api[2] = VgAPI (of player 3)
this.api[3] = VgAPI (of player 4)
this.api[4] = VgAPI (of player 5)
:
Runtime Error
Cannot set property '1' of undefined
私はthis.api[0]
が明示的にどこにも定義されていないため、これがあると信じて
は、私は、これはの配列を構築するために期待したいです。しかし、それはどこのアイテムがどれくらいあるかわからないので、問題です。この動作を可能にするために、この配列を適切に定義するにはどうすればよいですか?
変数をコンストラクタで空の配列として設定する必要があります。this.api = []; –
配列には「キー」がありません。配列には「インデックス」があります。すべての配列は定義上動的です。 –