Maison > développement back-end > Golang > Comment puis-je actualiser dynamiquement une section de modèle dans Go avec des mises à jour de variables ?

Comment puis-je actualiser dynamiquement une section de modèle dans Go avec des mises à jour de variables ?

Susan Sarandon
Libérer: 2024-12-31 00:23:12
original
942 Les gens l'ont consulté

How Can I Dynamically Refresh a Template Section in Go with Variable Updates?

Actualisation dynamique d'une section de modèle avec des mises à jour de variables dans Go

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.

Étapes de mise en œuvre

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.

Extrait de code

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();
Copier après la connexion

Implémentation d'un cadre alternatif

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal