Comment notifier le framework Blazor lorsque la valeur de la propriété est modifiée

asp.net-core blazor c#

Question

Quand nous avons un code HTML comme ci-dessous.

<h1>@Title</h1>

et C # comme ci-dessous

<h1>@Title</h1>

Je pense avoir exécuté un code comme ci-dessous

<h1>@Title</h1>

Ensuite, nous voyons que la vue a changé avec la nouvelle valeur.

Comment le moteur de rendu sait que la valeur de la propriété a été modifiée. Y a-t-il quelque chose comme INotifyProperyChange est implémenté? Comment le HTML sait-il que le moment est venu de mettre à jour le contenu?

Je veux juste savoir comment les composants internes de Blazor Framework sont architecturés.

Réponse acceptée

Blazor vérifie automatiquement les modifications des propriétés liées lorsqu'une interaction utilisateur a eu lieu (par exemple, un clic sur un bouton, le texte d'une entrée a été modifié). Dans ce cas, le code JavaScript de Blazor déclenche la détection des modifications en C # (= Webassembly). Par conséquent, vous n'avez rien à faire si vous souhaitez actualiser l'interface utilisateur après une interaction de l'utilisateur.

Cependant, il existe des cas dans lesquels vous souhaitez actualiser l'interface utilisateur bien qu'aucune interaction utilisateur ne se soit produite (par exemple, une minuterie). Dans ce cas, vous devez appeler StateHasChanged . J'ai créé un exemple plus détaillé sur learn-blazor.com .




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi