Я использую массив, полученный из базы данных своего царства, для рендеринга плоского списка задач, однако, когда я изменяю материал в базе данных, список не будет отображаться, пока я не покину страницу. И я не уверен, как это сделать, если бы я использовал избыточность, я бы поставил его как экстраданные, но здесь я не уверен, что делать.
Некоторые фрагменты кода:
async componentWillMount() {
try {
let realm = await Realm.open({
schema: [TaskSchema]
});
this.setState({ realm });
} catch (err) {
console.log(err);
console.log('we screwed boys');
}
Как обновить базу данных, не покидая страницы:
onDeleteClick = () => {
const realm = this.state.realm;
realm.write(() => {
let completedTasks = this.state.realm.objects('Task').filtered('isComplete = true');
realm.delete(completedTasks);
});
объявление плоского списка в render ():
let tasks = null;
if (this.state.realm) {
tasks = this.state.realm.objects('Task');
}
return (
<View style={styles.backgroundStyle}>
<FlatList
data={tasks}
renderItem={this.renderTasks}
keyExtractor={(item) => item.title}
/>
edit: note - он правильно удаляет элементы из базы данных, список просто не знает, как визуализировать заново, и я не знаю, как его указать