Компонент настроен таким образом, что он монтируется, а затем ему присваивается значение, когда я пытаюсь использовать его в моем рендеринге, для первого монтирования он равен нулю, прежде чем ему будет присвоено значение. Но мне нужно отобразить массив, который я получаю, поэтому я проверяю, является ли значение нулевым, а если нет, то я сопоставляю ... но, похоже, происходит сбой приложения.
class EventCalendar extends React.Component {
constructor(props) {
super(props);
this.state = {
};
this.handleGetEvents = this.handleGetEvents.bind(this);
}
componentWillMount() {
this.handleGetEvents();
}
handleGetEvents() {
this.props.getEvents();
}
render() {
const { events } = this.props;
console.log(events);
return (
... {events ?
<ScrollView>
{events.map((event, index) => (
<TouchableOpacity key={index} onPress={() => this.props.navigation.navigate('Event', event)}>
<View style={{ alignItems: 'center', marginLeft: 15, marginRight: 15, paddingRight: 15, borderColor: '#ddd', borderWidth: 1 }}>
...
</View>
</View>
</View>
</View>
</TouchableOpacity>
))}
</ScrollView>
: []
};
...
);
}
}