الآن، يمكننا استخدام مكون RecursiveRow هذا داخل المكون الأصلي الخاص بك للتعامل مع تخطيط المستوى الأعلى.

هذا كل شيء. إذا كان لديك أي أسئلة، يرجى ترك تعليق أدناه.

","image":"http://www.luping.net/uploads/20241022/17295566466716f0a64994b.png","datePublished":"2024-11-01T01:01:07+08:00","dateModified":"2024-11-01T01:01:07+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > إنشاء تخطيطات ديناميكية في Vue باستخدام مكونات متكررة

إنشاء تخطيطات ديناميكية في Vue باستخدام مكونات متكررة

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

يأتي الإلهام لهذه المقالة من التنفيذ الأخير الذي قمت به لإنشاء تخطيطات ديناميكية على الواجهة الأمامية المستندة إلى Vue.

لنفترض أن نقطة نهاية API الخاصة بك ترجع تخطيط YAML كما هو موضح أدناه.


---
row:
  - col: 12
    row:
      - col: 12
        component_id: 1
  - col: 12
    row:
      - col: 6
        component_id: 2
      - col: 6
        row:
          - col: 12
            component_id: 3
          - col: 12
            component_id: 4


نتوقع تخطيطًا مثل ما يلي من تعبير YAML هذا.

Generating dynamic layouts in Vue using recursive components

لذا، لتسهيل العمل مع هذا، سنقوم بتحليل بنية YAML هذه وإنشاء كائن JSON. لقد استخدمت حزمة yaml.


npm install yaml



ثم يمكننا استيراده وتشغيل المحلل اللغوي.


import YAML from 'yaml'
const jsonObject = YAML.parse(yaml_struct)


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







الآن، يمكننا استخدام مكون RecursiveRow هذا داخل المكون الأصلي الخاص بك للتعامل مع تخطيط المستوى الأعلى.







هذا كل شيء. إذا كان لديك أي أسئلة، يرجى ترك تعليق أدناه.

بيان الافراج تتم إعادة طباعة هذه المقالة على: https://dev.to/waruna/generating-dynamic-layouts-in-vue-using-recursive-components-4ci7؟1 إذا كان هناك أي انتهاك ، فيرجى الاتصال بـ [email protected] لحذفها.
أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3