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

مشكلة object object في عنصر textarea في React.js؟

Emad Saif

السؤال

أحاول أن أقوم بعمل صندوق لكتابة تعليق في مشروع React وقمت بكتابة الكود التالي:

import React, { useState } from "react";

export default function CommentEditor() {
  const [value, setValue] = useState('');
  return (
      <div>
        <textarea value={value} onChange={(v)=>setValue(v)}></textarea>
      </div>
  );
}

المشكلة الآن أن العنصر textarea يكون فارغ بشكل إفتراضي، ولكن عند محاولة كتابة أي شيء سظهر النص [object Object] داخل صندوق textarea، ولا يظهر أي خطأ في الـ console

ما المشكلة في هذا الكود؟ وكيف أقوم بحل المشكلة؟

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

Recommended Posts

  • 1

في لغة جافاسكربت عند عمل render ل object أي تحويله لسلة نصية سيتم طباعة العبارة

[object Object]

الحل هو استخلاص القيمة من كائن الحدث v بالشكل 

<textarea value={value} onChange={(v)=>setValue(v.target.value)}>
                                              // ^^^^^^^^^^^^^
</textarea>

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

 const handleChange = (event) => {
        setValue(event.target.value);
    };


/*       */


<textarea value={value} onChange={handleChange}>
                               // ^^^^^^^^^^^^^
</textarea>

 

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

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

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

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

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

  • إعلانات

  • تابعنا على



×
×
  • أضف...