Я отображаю данные в reactjs. Этот JSX:
{place.venue.location.formattedAddress}
Отображает через этот запрос данных axios, в частности, этот массив в моем ответе:
formattedAddress: Array(5)
0 : "Chester Rd"
1 : "London"
2 : "Greater London"
3 : "NW1 4NR"
4 : "United Kingdom"
В результате, когда я отображаю, он возвращает данные в одном предложении, соединенные вместе. Именно такой:
Serpentine RdHyde ParkGreater LondonW2 2TP
Я пытаюсь отобразить, разделить и соединить с разрывом строки, но это не работает. Мой адрес полностью перестает отображаться. Что я делаю неправильно?
Вот мой код (я нарезал, поэтому могу убрать страну в конце адреса).
{place.venue.location.formattedAddress.slice(0,4).split(',').join('<br />')}
отлично, спасибо @FelixKling!



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


class App extends React.Component{
render(){
var arr = ["hello", "there", "world"]
return(
<div>
{arr.map(s=><React.Fragment>{s}<br/></React.Fragment>)}
</div>
)
}
}
ReactDOM.render(<App />, document.getElementById("app"))<script crossorigin src = "https://unpkg.com/react@16/umd/react.development.js"></script>
<script crossorigin src = "https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
<div id = "app"></div>1 Вы вызываете split в массиве, но это строковый метод.
2 Невозможно использовать соединение с помощью '<br />'. jsx будет рассматривать его как строку.
вы должны отобразить элементы массива и вернуть массив jsx.
{place.venue.location.formattedAddress.slice(0,4).map(s=><React.Fragment>s <br/></React.Fragment>)}
Это не совсем похоже на join, поскольку join не добавляет <br /> в конец массива элементов.
Только строки имеют метод
.split. ЕслиformattedAddressявляется массивом, тоformattedAddress.slice(...)возвращает другой массив. Просто бросьте.split.