& nbsp jsx काम नहीं कर रहा है


101

मैं jsx में & nbsp टैग का उपयोग कर रहा हूं और यह स्थान प्रदान नहीं कर रहा है। निम्नलिखित मेरे कोड का एक छोटा सा टुकड़ा है। कृपया मदद करें।

var Reporting=React.createClass({

  render: function(){
    return(
      <div style={divPositionReporting}>
          <p>Pricing Reports</p>
          <hr></hr>
          Select Scenario:&nbsp;&nbsp;
          <select>
            <option></option>
          </select>
          <button type="button">Get Pricing Report</button>
          <br/>
          Select Takeout Scenario:&nbsp;
          <select>
            <option></option>
          </select>
          <button type="button">Get Pricing Report</button>
          <br/>
      </div>
    );
  },

});

तुमने खोजा? पहली हिट: google.com/search?q=react+html+entities
फेलिक्स क्लिंग

मुझे नहीं लगता कि आपके कोड में कुछ भी गड़बड़ है। कौन सा बैबल और रिएक्ट संस्करण उपयोग कर रहे हैं? नवीनतम संस्करणों का उपयोग करना सुनिश्चित करें। आप बैबल में देख सकते हैं कि जनरेट किए गए कोड में नॉन-ब्रेकिंग व्हाट्सएप अक्षर हैं।
फेलिक्स क्लिंग

खैर अब पहली हिट यही है। :) duckduckgo.com/?q=jsx+nbsp
मार्क स्ट्रोब

जवाबों:


209

देखें: JSX इन डेप्थ

प्रयत्न: Select Scenario:{'\u00A0'}

या: <div dangerouslySetInnerHTML={{__html: 'Select Scenario: &nbsp;'}} />

या: <div>&nbsp;</div>

jsfiddle

अपडेट करें

कुछ टिप्पणियों को देखने के बाद, और इसे आज़माकर देखें। यह मेरे ध्यान में आया है कि html का उपयोग JSX के अंदर प्रवेश करता है ठीक काम करता है (इसके विपरीत जो ऊपर दिए गए jsx-gotchas संदर्भ में कहा गया है [शायद यह पुराना है])।

इसलिए कुछ का उपयोग करना:: R&amp;D, आउटपुट: 'आर एंड डी'। इसके साथ एक अजीब व्यवहार होता है &nbsp;, जो इसे अलग तरीके से प्रस्तुत करने का कारण बनता है, इस प्रकार मुझे लगता है कि यह काम नहीं करता है:

<div>This works simply:-&nbsp;-</div>
<div>This works simply:- {'\u00A0'}-</div>

पैदा करता है:

This works simply:- -
This works simply:-  -

8
तो इसका उत्तर HTML इकाई से संबंधित यूनिकोड मान का उपयोग करना और जावास्क्रिप्ट स्ट्रिंग के अंदर उपयोग करना है। आपकी सहायता के लिए धन्यवाद।
इंद्रनील बेंडे

@ IndraneelBende &nbsp;को ठीक काम करना चाहिए। शैली विशेषता में मूल्य के साथ कुछ समस्या है।
गौरव कुमार

@ गौरव कुमार, मैंने भी कोशिश नहीं की, यह सिर्फ नजरअंदाज कर दिया गया है। क्या आप मेरे उत्तर में फिडेल जोड़ सकते हैं?
omerts

1
<div>Doesn't work: -&nbsp;-</div>मेरे लिए ठीक काम करता है। संपादित करें: ठीक है, यह एक गैर-ब्रेकिंग स्पेस नहीं लगता है।
फेलिक्स क्लिंग

Mmh, हालांकि React वेबसाइट पर अपेक्षित उत्पादन करता है ...
फेलिक्स क्लिंग


17

नीचे दिखाए अनुसार अपना jsxकोड लिखें { }

<h1>Code {' '}</h1>

आप यहां स्पेस या कोई विशेष पात्र रख सकते हैं।

जैसे आपके मामले में

Select Takeout Scenario:&nbsp;

इस तरह होना चाहिए

Select Takeout Scenario:{' '}

यह काम करेगा।

सलाह के रूप में आपको &nbspअतिरिक्त स्थान जोड़ने के लिए उपयोग नहीं करना चाहिए , आप उसी को प्राप्त करने के लिए सीएसएस का उपयोग कर सकते हैं ।


2
यह सिर्फ
व्हाट्सएप

5
हालांकि यह एक गैर-ब्रेकिंग स्पेस नहीं है।
टिमोसोलो

1
@TimoSolo मैं आपको उल्लिखित तकनीक का उपयोग करने के लिए प्रोत्साहित नहीं करता हूं। यदि आप काम नहीं कर रहे हैं तो आप पहले उत्तर की कोशिश कर सकते हैं। धन्यवाद।
WitVault

"समान प्राप्त करने के लिए सीएसएस का उपयोग करें" - आप गैर-ब्रेकिंग स्पेस का उपयोग कर रहे होंगे, ताकि आपका टेक्स्ट अगली पंक्ति तक और उस तत्व की सीमा के बाहर न गिरे जिसमें पाठ हो। यदि आप ऐसा करने के लिए CSS गुणों का उपयोग करना चाहते हैं, तो ऐसा करने का एक तरीका है text-overflow: "clip"; overflow: "hidden";। कुछ बदलाव उपलब्ध हैं।
दान क्रोन

4

यदि यह आपके लिए काम नहीं करता है {' '}तो उपयोग करें {'\u00A0'}

{' '}किसी स्थान को रेंडर करेगा लेकिन कुछ ऐसे मामले हैं जब आप चाहते हैं कि लाइन की ऊँचाई को एक ऐसे मामले में भी प्रस्तुत किया जाए जिसमें आप एक HTML तत्व के अंदर एक स्थान चाहते हैं जिसमें कोई अन्य पाठ न हो अर्थात: <span style={{ lineHeight: '1em' }}>{' '}</span>उस स्थिति में आपको {'\u00A0'}अंदर उपयोग करने की आवश्यकता होगी अवधि या HTML तत्व।


1

Utf-8 nbsp का उपयोग करने का प्रयास करें, साधारण स्थान के रूप में प्रतीत होता है, लेकिन अतिरिक्त कोड के बिना अच्छा काम कर रहा है।

हो सकता है, आपको इसके लिए वैरिएबल बनाना चाहिए।

कॉपी प्रतीकों के लिए: https://unicode-table.com/en/00A0/

स्वचालित रूप से ग्रंथों को उत्पन्न करने के लिए, कुछ टाइपोग्राफ का उपयोग करें।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.