fix deleting topics from AddNotebookDialog

This commit is contained in:
ammarahm-ed
2020-10-17 14:08:27 +05:00
parent 41c8a83670
commit f490e04fd2
2 changed files with 12 additions and 4 deletions

View File

@@ -95,15 +95,19 @@ export class AddNotebookDialog extends React.Component {
let {topics} = this.state; let {topics} = this.state;
let prevTopics = topics; let prevTopics = topics;
refs = []; refs = [];
console.log(prevTopics);
prevTopics.splice(index, 1); prevTopics.splice(index, 1);
let edit = this.props.toEdit; let edit = this.props.toEdit;
console.log(edit);
if (edit && edit.id) { if (edit && edit.id) {
let topicToDelete = edit.topics[index + 1]; let topicToDelete = edit.topics[index];
console.log(topicToDelete)
if (topicToDelete) { if (topicToDelete) {
this.topicsToDelete.push(topicToDelete.id); this.topicsToDelete.push(topicToDelete.id);
} }
} }
let nextTopics = [...prevTopics]; let nextTopics = [...prevTopics];
console.log(nextTopics);
if (this.prevIndex === index) { if (this.prevIndex === index) {
this.prevIndex = null; this.prevIndex = null;
this.prevItem = null; this.prevItem = null;
@@ -138,16 +142,20 @@ export class AddNotebookDialog extends React.Component {
prevTopics[this.prevIndex] = this.currentInputValue; prevTopics[this.prevIndex] = this.currentInputValue;
} else { } else {
prevTopics.push(this.currentInputValue); prevTopics.push(this.currentInputValue);
this.currentInputValue = null; this.currentInputValue =
null;
} }
} }
if (id) { if (id) {
console.log('topics to delete',this.topicsToDelete?.length)
if (this.topicsToDelete?.length > 0) { if (this.topicsToDelete?.length > 0) {
await db.notebooks await db.notebooks
.notebook(toEdit.id) .notebook(toEdit.id)
.topics.delete(...this.topicsToDelete); .topics.delete(...this.topicsToDelete);
toEdit = db.notebooks.notebook(toEdit.id).data; toEdit = db.notebooks.notebook(toEdit.id).data;
} }
console.log(toEdit.topics);
await db.notebooks.add({ await db.notebooks.add({
title: this.title, title: this.title,
@@ -167,6 +175,7 @@ export class AddNotebookDialog extends React.Component {
nextTopics.push(title); nextTopics.push(title);
} }
}); });
console.log('nextTopics',nextTopics);
await db.notebooks.notebook(id).topics.add(...nextTopics); await db.notebooks.notebook(id).topics.add(...nextTopics);
} else { } else {
await db.notebooks.add({ await db.notebooks.add({

View File

@@ -181,9 +181,8 @@ const SimpleList = ({
return <ListHeaderComponent type={dataType} data={listData}/>; return <ListHeaderComponent type={dataType} data={listData}/>;
case 'header': case 'header':
return <RenderSectionHeader item={data}/>; return <RenderSectionHeader item={data}/>;
default: default:
return null; return <RenderItem item={data} index={index}/>;
} }
}; };