"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية التكرار على المصفوفات المتوازية في قوالب HTML باستخدام وظيفة "الفهرس"؟

كيفية التكرار على المصفوفات المتوازية في قوالب HTML باستخدام وظيفة "الفهرس"؟

تم النشر بتاريخ 2024-11-18
تصفح:134

How to Iterate Over Parallel Arrays in HTML Templates Using the `index` Function?

كيفية التكرار عبر المصفوفات المتوازية في قوالب HTML باستخدام الفهرس

تتناول هذه المقالة صعوبة التكرار من خلال المصفوفات المتوازية (ذات الحجم المتساوي) في قوالب HTML. على وجه التحديد، كيفية استخدام وظيفة الفهرس داخل كتلة النطاق لتحقيق ذلك.

وظيفة الفهرس هي وظيفة قالب عالمي محددة مسبقًا تقوم باسترداد عنصر من خريطة أو شريحة أو صفيف بناءً على الفهرس المقدم. تسمح هذه الوظيفة بالتنقل المعقد داخل هياكل البيانات داخل القوالب.

في سياق التكرار من خلال المصفوفات المتوازية، نحتاج إلى أن نكون على دراية بالسياق الذي يتم فيه استخدام وظيفة الفهرس. بشكل افتراضي، تشير النقطة (${}) الموجودة داخل كتلة النطاق إلى العنصر الحالي في المصفوفة التي يتم تكرارها. ومع ذلك، للوصول إلى البيانات من المصفوفة الأخرى، نحتاج إلى العودة إلى النقطة الأصلية، التي تمثل وسيطة البيانات التي تم تمريرها إلى وظيفة التنفيذ.

وبالتالي، فإن الحل هو استخدام النقطة الأصلية ($) بدلاً من النقطة في تعبير الفهرس:

{{range $i, $e := .First}}{{$e}} - {{index $.Second $i}}{{end}}

يضمن هذا التعديل أن تشير وظيفة الفهرس إلى وسيطة البيانات الأصلية، مما يسمح بالتكرار المتوازي على المصفوفات.

هناك طريقة أخرى لمعالجة هذه المشكلة وهي تحديد وظيفة قالب مخصصة تسمى Zip، والتي تقبل شرائح متعددة كمدخلات وإرجاع شريحة من أزواج القيم. مثل هذه الوظيفة من شأنها تبسيط رمز القالب وربما إعادة استخدامها في سياقات أخرى.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3