0
角2の変化検出に関する情報がたくさんあることを知っています。私の問題はArrayの可変性プロパティと関係していると思いましたが、わかりません。だから私たちはFirebaseから入って来るこれらのバケツを持っています。そしてそれらを配列にプッシュして、子コンポーネントに渡します。このすべての作品と配列はかなり速く満たされますが、ページにレンダリングするには数秒かかります。 (しかし、私はいくつかのsetIntervalとsetTimeoutsを追加しようとすると、はるかに迅速に動作しますが、クリーンなソリューションがなければ、そのハックをしない方がいいでしょう。)誰でも十分な裏で何が起こっているのか分かりますか?私にそれを簡単に説明し、助けてくれますか?ありがとう!ここ角2変化検出が配列と@Inputsで数秒遅れる
import { Component } from '@angular/core';
import { BucketService } from '../../services';
@Component({
selector: 'home-page',
template: `
<header [title]="'Buckets'"></header>
<bucketlist [buckets]="buckets"></bucketlist>
`,
styleUrls: ['./home.page.scss']
})
export class HomePage {
buckets: Array<any> = [];
constructor(public bks: BucketService) {
bks.subscribe(bucket => {
console.log('bucket pushed: ', bucket);
this.buckets.push(bucket);
});
}
}
おそらく、プッシュの代わりにコンカットを使用して、変更検出をトリガーしてみてください。またはあなたのプッシュのすぐ下にthis.bucket = this.bucket.concat([])を追加してください。 –
はthis.buckets = this.buckets.concat([bucket]);を試しました。もう一方の方法です。それは正しく動作しますが、レンダリングするまで数秒間遅延します。 :/ – jaruesink
だから私はそれが可変性の問題ではないと思います。 – jaruesink