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>]
Dadurch wird sichergestellt, dass innerhalb des {{if}}-Blocks vorgenommene Änderungen nach dem Ende des Blocks widergespiegelt werden .
Alternative Ansätze
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!