Açısal Sinyaller — Untrack İşlevini Kullanarak Gereksiz Bağımlılıkları Önleme
Apr 28 2023
Bir sinyal değeri değiştiğinde, buna bağlı herhangi bir hesaplanmış() veya efekt() yeniden değerlendirilecektir. Buna izleme denir.

Bir sinyal değeri değiştiğinde, buna bağlı olan herhangi computed()
biri effect()
yeniden değerlendirilecektir. Buna izleme denir. Ancak bazen bir sinyal değerini bağımlılık yaratmadan yani değeri değiştiğinde reaktif fonksiyonu tetiklemeden okumak isteriz. untrack
Bu gibi durumlarda Angular tarafından sağlanan işlevi kullanabiliriz .
İki sinyalimizin olduğu a
ve b
değerlerini şu şekilde günlüğe kaydetmek istediğimiz bir örneği ele alalım effect
:
const a = signal(0);
const b = signal(1);
effect(() => {
console.log(a(), b());
})
import { untrack } from '@angular/core';
const a = signal(0);
const b = signal(1);
effect(() => {
console.log(a(), untrack(() => b()));
})
const a = signal(0);
const b = signal(1);
effect(() => {
console.log(a(), untrack(b));
})
effect(() => {
// ...read signals...
const a = a();
untracked(() => {
this.someMethodThatReadsSignals(a);
});
})
Sonuç olarak, untrack
işlev, sinyal okuma performansını iyileştirmek ve gereksiz bağımlılıkları önlemek için Açısal'da yararlı bir araçtır.
Angular ve JS hakkında daha fazlasını okumak için Medium veya Twitter'da beni takip edin !
Donovan, Şarkılarından 1'ini The Beatles'ın "Lucy in the Sky with Diamonds" şarkısıyla karşılaştırdı
Gene Simmons, KISS Çizgi Romanlarının Potansiyel Olarak "İnsanlığı Yeniden Yaratabileceğini" Söyledi
Tom Girardi Dolandırıcılık Suçlamalarından Yargılanma Yetkisinin Belirlenmesi İçin Duruşmaya Katıldı
Charly Reynolds Yakın Zamandaki Vokal Kord Ameliyatını Açıkladı: 'Şarkı Söylemekte Sorun Yaşıyordum'