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

إضافة الخيار ديناميكيًا لقائمة منسدله في react.js

صالح قريشه

السؤال

Recommended Posts

  • 1

يمكنك تخزين العناصر في حالة (state)

const [list,setLits] = useState([//ضع هنا قيمة القائمة الإبتدائية//]);

وعندما تريد أن تضيف عنصر ما تقم فقط بتعديل هذه القائمة التي في الحالة(state)

const addItem = (name)=>{
	setList(list.concat(name))
}

 

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

  • 1

لم أفهم ما تقصده بالضبط لكن حسب ما فهمت أنك تريد خيارات للاختيار وطريقة لإضافة الخيارات ديناميكيا اولا لتسهيل الامر هناك مكتبة تدعى react-select يمكنك استخدامها ستوفر عليك بعض المتاعب

import React from 'react';

import Select from 'react-select';
import makeAnimated from 'react-select/animated';
import { colourOptions } from '../data';

const animatedComponents = makeAnimated();

export default function AnimatedMulti() {
  return (
    <Select
      closeMenuOnSelect={false}
      components={animatedComponents}
      defaultValue={[colourOptions[4], colourOptions[5]]}
      isMulti
      options={colourOptions}
    />
  );
}

في المثال السابق الخيارات تأتي من array محلي مستورد من data لكن في مشروع عملي وواقعي أنت تريد مثلا أن تأتي الخيارات من سيرفر مثلا لديك مجالات عمل يمكنك أن تعمل موديل للمجالات في قاعدة البيانات وطريقة لإضافة مجالات العمل وجلبهم وعندما يكون لديك endpoint لجلب المجالات يمكنك استخدامها لجلبهم ووضعهم مكان data فوق في المثال في هذه الحالة عند اضافة أي مجال سيتم تحديث القائمة المنسدلة بالمجالات المضافة وهكذا لديك عملية ديناميكا

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

  • 0
بتاريخ 6 ساعات قال شرف الدين2:

يمكنك تخزين العناصر في حالة (state)


const [list,setLits] = useState([//ضع هنا قيمة القائمة الإبتدائية//]);

وعندما تريد أن تضيف عنصر ما تقم فقط بتعديل هذه القائمة التي في الحالة(state)


const addItem = (name)=>{
	setList(list.concat(name))
}

 

شكرا @شرف الدين-2

لكن قبل ذلك كيف لنا ان نربط الخيارات بالمصفوفه ؟

بتاريخ 1 ساعة قال Salah Eddin Berriani:

لم أفهم ما تقصده بالضبط لكن حسب ما فهمت أنك تريد خيارات للاختيار وطريقة لإضافة الخيارات ديناميكيا اولا لتسهيل الامر هناك مكتبة تدعى react-select يمكنك استخدامها ستوفر عليك بعض المتاعب


import React from 'react';

import Select from 'react-select';
import makeAnimated from 'react-select/animated';
import { colourOptions } from '../data';

const animatedComponents = makeAnimated();

export default function AnimatedMulti() {
  return (
    <Select
      closeMenuOnSelect={false}
      components={animatedComponents}
      defaultValue={[colourOptions[4], colourOptions[5]]}
      isMulti
      options={colourOptions}
    />
  );
}

في المثال السابق الخيارات تأتي من array محلي مستورد من data لكن في مشروع عملي وواقعي أنت تريد مثلا أن تأتي الخيارات من سيرفر مثلا لديك مجالات عمل يمكنك أن تعمل موديل للمجالات في قاعدة البيانات وطريقة لإضافة مجالات العمل وجلبهم وعندما يكون لديك endpoint لجلب المجالات يمكنك استخدامها لجلبهم ووضعهم مكان data فوق في المثال في هذه الحالة عند اضافة أي مجال سيتم تحديث القائمة المنسدلة بالمجالات المضافة وهكذا لديك عملية ديناميكا

@Salah Eddin Berriani بالظبط هذا ما كنت اقصده 

قد يكون هذا مفيدا لشخص متقدم شيء ما  فالذي ذكرته لم استوعبه جيدا ومن المؤكد انه مفيد لي في وقت لاحق 
لكن انا افضل تعلم الطريقه من دون مكتبه

تم التعديل في بواسطة صالح قريشه
رابط هذا التعليق
شارك على الشبكات الإجتماعية

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...