عند إنشاء متغيرات عامة في حزمة html/قالب Go، يعد فهم قيود النطاق أمرًا بالغ الأهمية. وفقًا لوثائق الحزمة، فإن المتغيرات المحددة في القالب لها نطاق محدود يمتد إلى نهاية بنية التحكم (على سبيل المثال، إذا، مع، النطاق) التي تم الإعلان عنها فيها.
ضع في اعتبارك كود HTML/القالب التالي:
{{if .UserData}} {{$currentUserId := .UserData.UserId}} [<a href="#ask_question">Inside {{$currentUserId}}</a>] {{else}} {{$currentUserId := 0}} {{end}} [<a href="#ask_question">outside {{$currentUserId}}</a>]
يهدف هذا الرمز إلى عرض معرف المستخدم الحالي داخل كتلة if و0 خارج الكتلة. ومع ذلك، تظهر النتيجة 0 في كلا المكانين نظرًا للنطاق المحدود لـ $currentUserId.
قدم Go 1.11 دعمًا لتعديل قيم متغيرات القالب. لتهيئة متغير، استخدم :=، كما في:
{{$currentUserId := 0}}
لتحديث قيمته، استخدم =، كما في:
{{$currentUserId = .UserData.UserId}}
من خلال تعديل متغير محدد خارج كتلة if، يمكن الوصول إلى التغيير داخل وخارج الكتلة. block.
إذا لم يكن تعديل المتغيرات العامة مناسبًا، ففكر في هذه البدائل:
من خلال الاستفادة من هذه الحلول، يمكنك إنشاء وتعديل المتغيرات العامة في حزمة html/قالب Go، مما يضمن تحديد نطاق المتغير المناسب وتحقيق الوظيفة المطلوبة في القوالب.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3