اذهب إلى المحتوى

السؤال

نشر

السلام عليكم استخدم اكسيوس لعمل fetch لهذا api 

[
    {
        "groupType": "Interessegruppe",
        "groups": [
            {
                "id": "c42b0250-375e-4458-8f68-0df8179f889c",
                "name": "Teater",
                "assignmentStrategy": 1
            },
            {
                "id": "0fb94732-2bb1-483b-abbd-858327339ca0",
                "name": "Fotball",
                "assignmentStrategy": 1
            },
            {
                "id": "6b109ab1-5a3e-46b0-b0cc-e2b48d6e2dc6",
                "name": "Foto",
                "assignmentStrategy": 1
            }
        ]
    },

]

 

وانا استطعت الوصول الى groupType والامر سهل وقمت بعرضه داخل الكمبوننت الخاص بى .. لكنى لا يمكننى ان اصل الى id او name انا استخدمت هذا الكود ولكن بدون فائدة .. مالحل ؟

 renderItem={({ item }) => (
          <GroupCard title={item.groupType} subTitle={item.groups.name} />
        )}

groupType ظهرت عادى اما  groups.name  لم تظهر .. ما حل هذه المشكلة .. كيف اصل الى أبوجكت داخل أوبجكت أخر ؟؟

Recommended Posts

  • 0
نشر

مرحباً أحمد 
الموضوع غير متعلق ب React أو ReactNative الموضوع ببساطة عبارة عن تلاعب بالبيانات إليك مثال ( إذا كنت تريد عرض العنوان الرئيسي والعنوان الفرعي  )

لكن أرجو توضيح فكرتك لأن لديك عنوان رئيسي يحمل أكثر من عنوان فرعي فإذا أردت أي عنوان فرعي يمكنك استخدام الآتي 

 renderItem={({ item }) => (
   <GroupCard title={item.groupType} subTitle={item.groups[0].name || ''} /> ---> قمت باختيار أول أوبجيكت 
 )}

الرجاء توضيح فكرتك أكثر 

  • 0
نشر
  بتاريخ On 20‏/1‏/2021 at 11:22 قال أحمد حبنكة:

وعليكم السلام ورحمة الله وبركاته

إن item.groups.name لن تعمل ﻷن groups عبارة عن مصفوفة وليست object ، إذا وضحت لنا ماذا من المفترض أن تفعل GroupCard يمكننا المساعدة بشكل أفضل.

أظهر المزيد  

GroupCard  عبارة عن كمبوننت انا وضعته داخل flat list واريد ان اعمل fetch للداتا وتخزينها فى هذا الكمبوننت ولكن انها ىتعمل مع الاوبجكت الرئيسى ولا تعمل مع المصفوفة التى داخله .. هل هذا يكفى ام اوضح اكثر ؟

  • 0
نشر
  بتاريخ On 20‏/1‏/2021 at 11:27 قال Ahmed Sawy:

GroupCard  عبارة عن كمبوننت انا وضعته داخل flat list واريد ان اعمل fetch للداتا وتخزينها فى هذا الكمبوننت ولكن انها ىتعمل مع الاوبجكت الرئيسى ولا تعمل مع المصفوفة التى داخله .. هل هذا يكفى ام اوضح اكثر ؟

أظهر المزيد  

ما الذي تريد فعله بالمصفوفة ؟ هل تريد مثلاً أن تملأ قائمة ul بعناصر li محتوى كل عنصر هو group.name ؟ أم لديك component تأخذ group object داخل الـGroupCard أم ماذا ؟

  • 0
نشر

سوف اقول لك .. هذا الكمبوننت له اتنين props وانا اعرض فيه نصين وهما .. العنوان والاسم .. انا استطعت ان اعمل fetch للعنوان لكنى لا استطيع ان اعمل فيتش للاسم لانه بداخل المصفوفة ..

نعم اريد ان افعل شئ كهذا كما قلت " هل تريد مثلاً أن تملأ قائمة ul بعناصر li محتوى كل عنصر هو group.name  "

  • 0
نشر
  بتاريخ On 20‏/1‏/2021 at 11:39 قال بلال زيادة:

ممكن تخبرني بأي لغة تريد عمل fetch لانه لأي لغة كود خاص فيها.

أظهر المزيد  

جافا سكريبت 

انا اخذت ال API من هذا الموقع 

https://joinme-api-profile.azurewebsites.net/index.html

هل عندك علم بهذا الموقع ؟

  بتاريخ On 20‏/1‏/2021 at 11:22 قال أحمد حبنكة:

وعليكم السلام ورحمة الله وبركاته

إن item.groups.name لن تعمل ﻷن groups عبارة عن مصفوفة وليست object ، إذا وضحت لنا ماذا من المفترض أن تفعل GroupCard يمكننا المساعدة بشكل أفضل.

أظهر المزيد  

 

  بتاريخ On 20‏/1‏/2021 at 11:39 قال بلال زيادة:

ممكن تخبرني بأي لغة تريد عمل fetch لانه لأي لغة كود خاص فيها.

أظهر المزيد  

 

  • 0
نشر
  بتاريخ On 20‏/1‏/2021 at 11:38 قال Ahmed Sawy:

سوف اقول لك .. هذا الكمبوننت له اتنين props وانا اعرض فيه نصين وهما .. العنوان والاسم .. انا استطعت ان اعمل fetch للعنوان لكنى لا استطيع ان اعمل فيتش للاسم لانه بداخل المصفوفة ..

نعم اريد ان افعل شئ كهذا كما قلت " هل تريد مثلاً أن تملأ قائمة ul بعناصر li محتوى كل عنصر هو group.name  "

أظهر المزيد  

الحل هو أن تمرر المصفوفة بأكملها إلى GroupCard هكذا:

 renderItem={({ item }) => (
          <GroupCard title={item.groupType} groups={item.groups} />
        )}

وداخل GroupCard تقوم بفعل شيء مثل هذا:

<ul>
  {props.groups.map((group) => (
  	<li>{group.name}</li>
  ))}
</ul>

أو أي شيء مشابه حسب الطريقة التي تريد بها عرض أسماء المجموعات.

بالتوفيق وشكراً لك

  • 0
نشر
  بتاريخ On 20‏/1‏/2021 at 11:53 قال أحمد حبنكة:

الحل هو أن تمرر المصفوفة بأكملها إلى GroupCard هكذا:

 renderItem={({ item }) => (
          <GroupCard title={item.groupType} groups={item.groups} />
        )}

وداخل GroupCard تقوم بفعل شيء مثل هذا:

<ul>
  {props.groups.map((group) => (
  	<li>{group.name}</li>
  ))}
</ul>

أو أي شيء مشابه حسب الطريقة التي تريد بها عرض أسماء المجموعات.

بالتوفيق وشكراً لك

أظهر المزيد  

شكرا لك لكنها لم تنفع لاننى لا استخدم ال map فانكشن لاننى فى رياكت ناتيف واستخدم FlatList 

  • 0
نشر
  بتاريخ On 20‏/1‏/2021 at 12:04 قال Ahmed Sawy:

شكرا لك لكنها لم تنفع لاننى لا استخدم ال map فانكشن لاننى فى رياكت ناتيف واستخدم FlatList 

أظهر المزيد  

ظننتك تستعمل ReactJS ولم أعلم بأنك تستخدم React Native، آسف ولكن لا علم لي بـReact Native :( 

  • 0
نشر
  بتاريخ On 20‏/1‏/2021 at 13:08 قال Mohammed Saber:

مرحباً أحمد 
الموضوع غير متعلق ب React أو ReactNative الموضوع ببساطة عبارة عن تلاعب بالبيانات إليك مثال ( إذا كنت تريد عرض العنوان الرئيسي والعنوان الفرعي  )

لكن أرجو توضيح فكرتك لأن لديك عنوان رئيسي يحمل أكثر من عنوان فرعي فإذا أردت أي عنوان فرعي يمكنك استخدام الآتي 

 renderItem={({ item }) => (
   <GroupCard title={item.groupType} subTitle={item.groups[0].name || ''} /> ---> قمت باختيار أول أوبجيكت 
 )}

الرجاء توضيح فكرتك أكثر 

أظهر المزيد  

شكرا أخى لا اعرف كيف أشكرك 

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...