के लिए मान्य प्रतीकों क्या हैं इस तरह के प्रतिक्रिया कुंजी प्रोप के लिए वैध प्रतीक क्या हैं;एक प्रतिक्रिया 'कुंजी'
<div key="can i use spaces for example?"></div>
मेरे मामले में मैं कुंजी
const links = [
{
label: 'foo label',
href: 'https://example.com',
},
{
label: 'bar label',
href: 'https://example.com',
}
]
links.map(
link => (<a key={link.href} href={link.href}>{link.label}</a>)
);
रूप में एक URL का उपयोग करना चाहते यह वैध है? मैं सोच रहा था कि मैं पहले से ही href को पास करने के लिए कुछ हैश फ़ंक्शन का उपयोग कर सकता हूं, लेकिन यदि कोई वर्ण किसी महत्वपूर्ण मान में मान्य होने की गारंटी है तो यह एक व्यर्थ कदम है।
कारण मैं पूछ रहा हूं कि मुझे उस दस्तावेज़ में कोई उदाहरण नहीं मिल रहा है जो कुंजी के लिए गैर-अल्फा-न्यूमेरिक वर्ण का उपयोग करता है, और यह भी स्पष्ट रूप से कहता है कि, यदि आपके पास कोई आईडी नहीं है उस ऑब्जेक्ट के लिए कुंजी के रूप में उपयोग करें जिसे आप प्रतिपादित कर रहे हैं, आप hash some part of it to make a key
कर सकते हैं। यद्यपि ऐसा इसलिए हो सकता है क्योंकि आपको बहुत लंबी चाबियों का उपयोग नहीं करना चाहिए, और इसके पहले सामग्री को अपने आकार को छोटा करने के लिए हैश करना चाहिए, ऐसा लगता है कि पूरे दस्तावेज स्पष्ट रूप से कहते हैं कि केवल अल्फा-न्यूमेरिक वर्णों को कुंजी के रूप में उपयोग किया जाना चाहिए। प्रतिक्रिया के प्रमुख के लिए
हालांकि आपके द्वारा पोस्ट किया गया अंश स्पष्ट रूप से किसी कुंजी में उपयोग करने के लिए अमान्य तारों के बारे में कुछ भी नहीं कहता है, यह कहता है कि "आप कुंजी उत्पन्न करने के लिए सामग्री का कुछ हिस्सा हश कर सकते हैं"। हालांकि इसका मतलब यह नहीं है कि कुछ वर्ण अमान्य हैं, ऐसा लगता है कि इसका मतलब यह हो सकता है। और भले ही प्रतिक्रिया किसी भी पात्र के लिए क्रैश प्रतीत नहीं होती है (यूआरएल उदाहरण के लिए काम करता प्रतीत होता है), इसका मतलब यह नहीं है कि यह "समर्थित" है और भविष्य में होगा। – sigsve
यह सुनिश्चित नहीं है कि मूल उदाहरण बदल गया है, लेकिन उस मामले में कुंजी * एक अच्छा फिट नहीं है, क्योंकि यूआरएल अपने भाई बहनों के बीच अद्वितीय नहीं है। इस मामले में लेबल का उपयोग करने के लिए बेहतर है। –