簡體   English   中英

管道角度變化檢測

[英]Angular change detection with pipe

我對變更檢測和管道有問題。 我找不到解決它的好方法。

我創建了一個小項目來在這里復制它。 轉到/ monitor路線。

當您單擊“更改”按鈕時,它將更改數組中第一項的值,但不會更新UI。

如果我在變更處理程序中重新創建另一個對象,它將起作用

this.state[0] = Object.assign({}, this.state[0], { value: 999.99 });

但是我不想那樣做。 我需要保留相同的對象引用。

問題來自vital-value.component.html中的管道

{{ _vitalValue | vitalFormat }}

如果我改用它就可以了

{{ _vitalValue.value }}

有沒有辦法保留管道但要進行刷新?

謝謝!

盡管不建議這樣做,但請嘗試使管道不純。

@Pipe({
  name: 'vitalFormat',
  pure: false
})

但請注意對您應用程序性能的影響。 確實不建議使用impure管道。

在這里閱讀:

Angular在每個組件更改檢測周期內執行不純管道。 每次擊鍵或移動鼠標時,都會經常調用不純管道。

考慮到這一點,應格外小心地安裝不純凈的管道。 昂貴的,長時間運行的管道可能會破壞用戶體驗。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM