Dans Go, il n'existe pas de prise en charge native pour actualiser sélectivement des parties d'un modèle lorsque les variables sont mises à jour. Pour obtenir cette fonctionnalité, une approche personnalisée est requise.
1. Modèles de refactorisation :
Séparez le modèle qui restitue la section « Adresses » en créant un modèle partiel à l'aide de l'action {{define "name"}}. Placez ce modèle partiel dans un fichier séparé ou intégrez-le localement en utilisant {{template "name"}}.
2. Créer ou modifier des gestionnaires :
Définissez un gestionnaire qui exécute et restitue exclusivement le modèle partiel "Adresses". Ce gestionnaire doit envoyer sa sortie directement à la réponse HTTP. Vous pouvez créer un gestionnaire distinct ou modifier votre gestionnaire existant pour gérer à la fois le modèle complet et le rendu partiel des « Adresses ».
3. Modifications côté client :
Lorsque vous souhaitez mettre à jour la section « Adresses » de manière dynamique, lancez une requête AJAX au gestionnaire responsable du rendu uniquement de cette section. Remplacez le contenu HTML de l'élément wrapper de la section « Adresses » par le texte de réponse de l'appel AJAX.
Le code côté client pour cette mise à jour dynamique pourrait ressembler à :
var addresseesElement = document.getElementById("addressees"); var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.status == 200) { addresseesElement.outerHTML = xhr.responseText; } } xhr.open("GET", "path-to-addresses-render", true); xhr.send();
Gowut, un cadre d'application Web d'une seule page pour Go, fournit des fonctionnalités similaires pour les mises à jour des modèles. Les développeurs peuvent se référer au fichier js.go de Gowut pour les détails de mise en œuvre.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!