यह अपेक्षित है, आपको नई पंक्ति (\ n) वर्णों को HTML लाइन विराम में बदलने की आवश्यकता होगी
प्रतिक्रिया में इसका उपयोग करने के बारे में एक लेख: न्यूक्लियर को तोड़ने के लिए प्रतिक्रिया दें (nl2br)
लेख उद्धृत करने के लिए:
क्योंकि आप जानते हैं कि रिएक्ट में सब कुछ कार्य है, आप वास्तव में ऐसा नहीं कर सकते
this.state.text.replace(/(?:\r\n|\r|\n)/g, '<br />')
चूंकि वह DOM नोड्स के साथ एक स्ट्रिंग को वापस लौटाएगा, इसलिए इसे अनुमति नहीं है, क्योंकि केवल एक स्ट्रिंग होना चाहिए।
आप फिर कुछ इस तरह की कोशिश कर सकते हैं:
{this.props.section.text.split(“\n”).map(function(item) {
return (
{item}
<br/>
)
})}
इसकी अनुमति नहीं है क्योंकि फिर से रिएक्ट शुद्ध कार्य है और दो कार्य एक दूसरे के बगल में हो सकते हैं।
tldr। उपाय
{this.props.section.text.split(“\n”).map(function(item) {
return (
<span>
{item}
<br/>
</span>
)
})}
अब हम प्रत्येक लाइन-ब्रेक को एक स्पैन में लपेट रहे हैं, और यह ठीक काम करता है क्योंकि स्पैन की इनलाइन प्रदर्शित होती है। अब हमें एक कामकाजी nl2br लाइन-ब्रेक समाधान मिला