Во-первых, вы должны иметь в виду, что (почти все время), если вы хотите изменить пользовательский интерфейс вашего приложения (перерисовать компонент) на основе некоторой переменной / объекта / списка и т. Д., Затем эта переменная / объект/ list и т. д. должны быть объявлены как переменная состояния.
Поэтому я бы предложил вам инициализировать ваш список в состоянии вашего компонента следующим образом:
state = {
connect_logs: [],
}
Затем, когда вы захотите добавить обновлениеВ своем списке вы должны выполнить это, вызвав setState()
, чтобы повторно обработать ваш пользовательский интерфейс, чтобы отразить последние изменения, например:
const updatedList = ['item1', 'item2', 'item3']; //dummy values
this.setState({connect_logs: updatedList}); //update state to change UI
И теперь вы должны применить ваше условие к this.state.connect_logs
для динамического измененияИсточник вашего изображения, как это:
return (
<View style={styles.container}>
<Image
source={
this.state.connect_logs.length>0 ?
require('../assets/images/connect_line.png') :
require('../assets/images/no_line.png')
}
style={styles.lineImage}
/>
</View>
)