Когда я запускаю код в expo приложении, оно работает, но когда я пытаюсь загрузить его в реальное устройство, оно вылетает ... Я думаю, мне нужно создать асинхронное приложение, но я знаю, как ...
Я пытаюсь загрузить более тысячи маркеров на карту ... если я бегу в перекус, это работает ...: / кто-то может мне помочь ??
class App extends React.Component {
state = {
isLoading: true,
markers: [],
modalVisible: false,
locationChosen: false,
showAlert: false,
};
componentDidMount() {
return fetch('https://gist.githubusercontent.com/MatheusCbrl/bba7db1c0dbc68be2f26d5c7e15649b6/raw/0fab4ea3b493dcd15e95f172cd0a251724efbc45/teste.json')
.then(response => response.json())
.then(responseJson => {
// just setState here e.g.
this.setState({
markers: responseJson,
isLoading: false,
});
})
.catch(error => {
console.error(error);
});
}
renderMarkers() {
return this.state.isLoading
? null
: this.state.markers.map((marker, index) => {
const coords = {
latitude: JSON.parse(marker.latitude),
longitude: JSON.parse(marker.longitude),
};
return (
<MapView.Marker
onPress={this.pickLocationHandler}
ref={mark => (marker.mark = mark)}
key={index}
title={'Parada'}
//description={marker.hora}
coordinate={coords}>
<Image
onPress={e => this.onPressMarker(e, index)}
source={
this.state.selectedMarkerIndex === index
? markerImage2
: markerImage2
}
style={styles.icon}
/>
</MapView.Marker>
);
});
}