diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/client/views/collections/CollectionTreeView.tsx | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/client/views/collections/CollectionTreeView.tsx b/src/client/views/collections/CollectionTreeView.tsx index b075737d2..bb1b49f4f 100644 --- a/src/client/views/collections/CollectionTreeView.tsx +++ b/src/client/views/collections/CollectionTreeView.tsx @@ -32,8 +32,10 @@ class TreeView extends React.Component<TreeViewProps> { @observable collapsed: boolean = false; - delete() { - this.props.deleteDoc; + delete = () => { + if (this) { + this.props.deleteDoc(this.props.document); + } } renderBullet(type: BulletType) { @@ -126,6 +128,14 @@ class TreeView extends React.Component<TreeViewProps> { @observer export class CollectionTreeView extends CollectionViewBase { + @action + remove(document: Document) { + var children = this.props.Document.GetT<ListField<Document>>(KeyStore.Data, ListField); + if (children && children !== FieldWaiting) { + children.Data.splice(children.Data.indexOf(document), 1); + } + } + render() { let titleStr = ""; let title = this.props.Document.GetT<TextField>(KeyStore.Title, TextField); @@ -136,7 +146,7 @@ export class CollectionTreeView extends CollectionViewBase { var children = this.props.Document.GetT<ListField<Document>>(KeyStore.Data, ListField); let childrenElement = !children || children === FieldWaiting ? (null) : (children.Data.map(value => - <TreeView document={value} deleteDoc={() => console.log("test")} />) + <TreeView document={value} key={value.Id} deleteDoc={(value) => this.remove(value)} />) ) return ( |
