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

كيف أعمل fetch ل أوبجكت موجود داخل أوبجكت أخر ؟؟

Ahmed Sawy

السؤال

السلام عليكم استخدم اكسيوس لعمل 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 || ''} /> ---> قمت باختيار أول أوبجيكت 
 )}

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

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 1

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

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

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 3 دقائق مضت قال أحمد حبنكة:

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

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

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

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 6 دقائق مضت قال Ahmed Sawy:

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

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

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

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

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

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ الآن قال بلال زيادة:

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

جافا سكريبت 

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

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

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

بتاريخ 20 دقائق مضت قال أحمد حبنكة:

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

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

 

بتاريخ 3 دقائق مضت قال بلال زيادة:

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

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 15 دقائق مضت قال 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
بتاريخ 10 دقائق مضت قال أحمد حبنكة:

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


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

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


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

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

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

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

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ الآن قال Ahmed Sawy:

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

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

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ الآن قال أحمد حبنكة:

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

لا يهمك ي صديقى .. وشكرا لك على المساعدة .. 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 30 دقائق مضت قال 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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...