0

2 つのバインドされた入力 (1 つの大きな配列と配列の 2 つのマーカー (位置)) を持つコンポーネントがあります。

成分:

export class listSequence  { 
@Input() info: Data;
@Input() position: Markers;
..
...}

意見

バインドされたデータ @input をループし、@input マーカー (position.start および position.end) を使用して必要な要素のみをスライスしています (マーカーはいつでも変更できます)。

<g *ngFor="#p of info.data  | slice:position.start:position.stop+1 ; let i = index ">..</g>

info.data のループ中にマーカーの 1 つが変更されると、結果がめちゃくちゃになることがあります。

マーカー (position.start または position.stop) の変更後、1 回 (または 2 回) の反復が後で処理されることがあります。

component.start の更新後、反復は i:0 から i:14 に移動する必要があります

ここに画像の説明を入力

4

1 に答える 1

0

plnkr リンク

app.ts では、大きな配列をロードします (配列が "X"、"Y"、"Z" 要素で終わることに注意してください)。

ナビゲーターをドラッグすると、下に表示されている配列 (赤い部分) を移動できます。ナビゲーターの左側を右にドラッグすると、要素が正しい位置に表示されないことがあります。末尾の「X」「Y」「Z」で確認できます。

また、コンソールでは、イテレータがどのように混乱しているかを確認できます (時々)

于 2016-07-26T08:10:22.407 に答える