2016-03-03 49 views
1

我正在使用React構建應用程序。json字符串中的換行符不會出現在js對象中

我正在使用axios.get()將json對象轉變爲js對象。 json包含一個字符串"First line \n Second line"。當我把它變成一個js對象時,字符串變成"First line ↵ Second line"。這不會被解釋爲Chrome/Firefox瀏覽器中的新行。

我如何成功將\n解釋爲一條新線?

謝謝。

編輯:

我使用的終極版,承諾採取後續行動對Axios公司回報的承諾。

+1

服務器發送的json字符串是否包含實際的換行符或反斜槓後跟字母'n'? 'JSON.parse'似乎需要後者。 – traktor53

+0

你可以嘗試在你的css中添加'white-space:pre-line;'對於那個元素 – xkcd149

+0

@ Traktor53,json確實包含一個反斜槓,後面跟着字母'n'。我沒有使用JSON.parse。相反,我使用Redux-Promise來跟蹤axios返回的承諾。 – Nico

回答

0

你必須用另一個反斜槓來逃避你的\ n。 嘗試「第一行\\ n第二行」

+0

我將JSON更改爲「第一行\\ n第二行」;現在我在瀏覽器中出現「第一行\ n第二行」。不完全的。 '\ n'仍然沒有正確解釋。 – Nico

+0

您可以映射您的文本並插入分隔線 -
標籤。 '{this.props.yourObject.string.split(「\ n」)。圖(功能(文​​本){ 回報( {文本}
) })}' – Simon

+0

我欣賞該建議,但是這將是非常乏味的,因爲我有幾個字符串與這個問題,解決方案太冗長,無法擴展。 – Nico