Heim > Backend-Entwicklung > Golang > Wie kann ich globale Variablen im HTML/Template-Paket von Go erstellen und ändern?

Wie kann ich globale Variablen im HTML/Template-Paket von Go erstellen und ändern?

Mary-Kate Olsen
Freigeben: 2024-11-25 08:41:27
Original
336 Leute haben es durchsucht

How Can I Create and Modify Global Variables Within Go's html/template Package?

Globale Variablen erstellen und an mehreren Stellen im HTML/Template-Paket von Go ändern

Definieren Sie im HTML/Template-Paket von Go eine Variable darin Scope isoliert es effektiv auf diese bestimmte Region. Im bereitgestellten Beispiel sollte die Variable $currentUserId einen Wert speichern, der in der gesamten Vorlage bestehen bleibt, ihr Gültigkeitsbereich ist jedoch auf die if-Bedingung beschränkt.

Ändern von Vorlagenvariablen

Go 1.11 führte die Möglichkeit ein, Vorlagenvariablen zu ändern. Mit := wird eine Variable definiert, während = einen neuen Wert zuweist. Variablen können global zugänglich gemacht werden, wenn sie außerhalb der if-Bedingung definiert werden und ihr Wert darin geändert wird.

{{$currentUserId := 0}}
{{if .UserData}}
    {{$currentUserId = .UserData.UserId}}
    [<a href="#ask_question">Inside {{$currentUserId}}</a>]
{{else}}
    [No User Data]
{{end}}
[<a href="#ask_question">outside {{$currentUserId}}</a>]
Nach dem Login kopieren

Dadurch wird sichergestellt, dass innerhalb des {{if}}-Blocks vorgenommene Änderungen nach dem Ende des Blocks widergespiegelt werden .

Alternative Ansätze

  • Benutzerdefiniert Funktionen: Registrieren Sie eine Funktion wie CurrentUserId(), die die Benutzer-ID basierend auf dem Vorhandensein von UserData zurückgibt.
  • Simulierte Variablen: Verwenden Sie eine registrierte benutzerdefinierte Funktion, um veränderbare Variablen zu simulieren und zu speichern Daten in einer Karte, die an die Vorlage übergeben wird Ausführung.

Fazit

Das Vorlagenpaket von Go zeichnet sich zwar durch seine Einfachheit aus, weist jedoch Einschränkungen für komplexe Logik auf. Durch die Verwendung von Zuweisungs- und benutzerdefinierten Funktionen können Sie Werte jedoch an mehreren Stellen in Ihren Vorlagen effektiv bearbeiten.

Das obige ist der detaillierte Inhalt vonWie kann ich globale Variablen im HTML/Template-Paket von Go erstellen und ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage