Come Blazor Framework viene notificato quando viene modificato il valore della proprietà

asp.net-core blazor c#

Domanda

Quando abbiamo un codice HTML come sotto.

<h1>@Title</h1>

e C # come sotto

<h1>@Title</h1>

Penso di aver eseguito un codice come di seguito

<h1>@Title</h1>

Quindi vediamo che la vista ha preso a braccetto con il nuovo valore.

Come il renderer sa che il valore della proprietà ha delle modifiche. C'è qualcosa come INotifyProperyChange è implementato. Come l'HTML sa che questo è il momento di aggiornare il contenuto.

Voglio solo sapere come sono architettati gli interni del Blazor Framework.

Risposta accettata

Blazor controlla automaticamente le modifiche delle proprietà associate quando si verifica un'interazione con l'utente (ad es. Clic del pulsante, testo in un input modificato). In tal caso, il codice JavaScript di Blazor attiva il rilevamento delle modifiche in C # (= Webassembly). Pertanto, non è necessario eseguire alcuna operazione se si desidera aggiornare l'interfaccia utente dopo un'interazione dell'utente.

Tuttavia, ci sono casi in cui si desidera aggiornare l'interfaccia utente anche se non si sono verificate interazioni con l'utente (ad esempio il timer). In tal caso, devi chiamare StateHasChanged . Ho creato un esempio più dettagliato su learn-blazor.com .




Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché