লেবেল উপাদানটির বৈশিষ্ট্যটির জন্য 'অগ্রাহ্য' করে Re


250

প্রতিক্রিয়াতে (ফেসবুকের ফ্রেমওয়ার্ক), আমাকে স্ট্যান্ডার্ড forঅ্যাট্রিবিউটটি ব্যবহার করে একটি পাঠ্য ইনপুটকে আবদ্ধ লেবেল উপাদান রেন্ডার করতে হবে ।

যেমন নীচের জেএসএক্স ব্যবহৃত হয়:

<label for="test">Test</label>
<input type="text" id="test" />

যাইহোক, এটি প্রয়োজনীয় (এবং মান) forবৈশিষ্ট্য অনুপস্থিত এইচটিএমএল উত্পাদন করে :

<label>Test</label>
<input type="text" id="test">

আমি কি ভুল করছি?

উত্তর:


484

forঅ্যাট্রিবিউট বলা হয় htmlForকরে DOM সম্পত্তি API- এর সাথে ঐক্য জন্য। আপনি যদি প্রতিক্রিয়ার বিকাশ ব্যবহার করে থাকেন তবে আপনার কনসোলে একটি সতর্কতা দেখা উচিত ছিল।


4
ধন্যবাদ বেন আপনি কি আমার জন্য "ডোম এপিআইয়ের সাথে ধারাবাহিকতার জন্য" ব্যাখ্যা করতে পারেন?
goofballLogic

17
আপনি যদি একটি থেকে থাকে labelউপাদান (যেমন দ্বারা ফিরে document.createElement, document.getElementById, ইত্যাদি) আপনি তার অ্যাক্সেস চাই forযেমন সম্পত্তি label.htmlFor
সোফি আল্পার্ট

3
@ মেগলিও এইচটিএমএলতে আপনাকে কাজের জন্য বৈশিষ্ট্যের জন্য একটি আইডি প্রয়োজন। আপনার উপাদানটিকে পুনরায় ব্যবহারযোগ্য করে তুলতে আপনি আপনার উপাদান হিসাবে একটি আইডি সম্পত্তি যুক্ত করতে পারেন যা আপনি আইডি হিসাবে এবং প্রকৃত ইনপুট ক্ষেত্রে নাম বৈশিষ্ট্য হিসাবে সেট করেছিলেন।
উইম মোস্টম্যানস

2
কিছু নয়, আমি উত্তরটি এখানে পেয়েছি । তারা একটি আইডি জেনারেটর ব্যবহার করতে বলে।
টোবিয়া

2
@ বেনআলপার্ট এ বিষয়ে আলোকপাত করার জন্য ধন্যবাদ। আমি কখনই jQuery এবং স্টাফগুলির কারণে DOM এপিআইয়ের দিকে নজর দিতাম না (দয়া করে আমাকে ক্ষমা করুন)। তবে অন্য কেউ যদি এ সম্পর্কে আরও জানতে আগ্রহী হন তবে বিকাশকারী.মোজিলা.আর.ইন- ইউএস / ডকস / ওয়েব / এপিআই / এইচটিএমএলএলএলমেটমেন্ট দেখুন
alvincrespo

18

হ্যাঁ, প্রতিক্রিয়া জন্য,

for হয়ে htmlFor

class হয়ে className

প্রভৃতি

এইচটিএমএল বৈশিষ্ট্যগুলি কীভাবে এখানে পরিবর্তিত হয় তার সম্পূর্ণ তালিকা দেখুন:

https://facebook.github.io/react/docs/dom-elements.html


13

প্রতিক্রিয়ার জন্য আপনাকে অবশ্যই এইচটিএমএল বৈশিষ্ট্যগুলি সংজ্ঞায়িত করতে প্রতি-সংজ্ঞায়িত কীওয়ার্ডগুলি ব্যবহার করতে হবে।

class -> className

ব্যবহৃত হয় এবং

for -> htmlFor

প্রতিক্রিয়া ক্ষেত্রে সংবেদনশীল হিসাবে ব্যবহার করা হয়, নিশ্চিত করুন যে আপনি প্রয়োজন হিসাবে ছোট এবং মূলধন অনুসরণ করা আবশ্যক।


3

উভয় forএবং classজাভাস্ক্রিপ্ট শব্দের সংরক্ষিত এই জন্যই যখন এটি এইচটিএমএল JSX মধ্যে বৈশিষ্ট্যাবলী আসে আপনি, অন্য ব্যবহারের কিছু প্রয়োজন প্রতিক্রিয়া দল ব্যবহার করার সিদ্ধান্ত নিয়েছে htmlForএবং classNameযথাক্রমে


1
এটির সাথে তার কোনও সম্পর্ক নেই। জেএসএক্স রূপান্তরটি কেবল এটি 'শ্রেণিতে' অনুবাদ করতে পারে যা সম্পত্তি নামের জন্যও বৈধ। আসলে, প্র্যাক্টে, আপনি ক্লাস এবং ক্লাসের নাম উভয় ব্যবহার করতে পারেন।
মাল্টে আর

3
প্রতিক্রিয়া এটি জেএসএক্সে রূপান্তর করতে পারে, এমনটি হয় না। তাদের দস্তাবেজগুলি (25-মার্চ -2020 অনুসারে ) জানায় "যেহেতু forজাভাস্ক্রিপ্টে একটি সংরক্ষিত শব্দ, প্রতিক্রিয়াগুলির htmlForপরিবর্তে উপাদানগুলি ব্যবহার করে" ": reactjs.org/docs/dom-elements.html#html জন্য
nirvdrum

আপনি IE8, IE7 এবং IE6 তা বলতে পারেন @MalteR
ত্রিশূল ডি গাও


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.