Browse Source

fixed handling of isLast for FileItem and Folder

Skylsmoi 6 years ago
parent
commit
d7de2775df
2 changed files with 18 additions and 5 deletions
  1. 9 4
      src/component/Workspace/Folder.jsx
  2. 9 1
      src/container/WorkspaceContent.jsx

+ 9 - 4
src/component/Workspace/Folder.jsx View File

@@ -22,7 +22,7 @@ class Folder extends React.Component {
22 22
   }
23 23
 
24 24
   render () {
25
-    const { app, folderData: { title, content }, isLast, t } = this.props
25
+    const { app, folderData: { title, content }, onClickItem, isLast, t } = this.props
26 26
     return (
27 27
       <div className={classnames('folder', {'active': this.state.open, 'item-last': isLast})}>
28 28
         <div className='folder__header' onClick={this.handleClickToggleFolder}>
@@ -56,14 +56,19 @@ class Folder extends React.Component {
56 56
 
57 57
         <div className='folder__content'>
58 58
           { content.map((c, i) => c.type === 'folder'
59
-            ? <Folder folderData={c} key={c.id} isLast={i === content.length - 1} />
59
+            ? <Folder
60
+              folderData={c}
61
+              onClickItem={onClickItem}
62
+              isLast={isLast}
63
+              key={c.id}
64
+            />
60 65
             : <FileItem
61 66
               icon={(app[c.type] || {icon: ''}).icon}
62 67
               name={c.title}
63 68
               type={c.type}
64 69
               status={c.status}
65
-              onClickItem={() => {}}
66
-              isLast={i === content.length - 1}
70
+              onClickItem={() => onClickItem(c)}
71
+              isLast={isLast && i === content.length - 1}
67 72
               key={c.id}
68 73
             />
69 74
           )}

+ 9 - 1
src/container/WorkspaceContent.jsx View File

@@ -66,7 +66,15 @@ class WorkspaceContent extends React.Component {
66 66
             <FileItemHeader />
67 67
 
68 68
             { workspace.content.map((c, i) => c.type === 'folder'
69
-              ? <Folder app={app} folderData={c} key={c.id} isLast={i === workspace.content.length - 1} />
69
+              ? (
70
+                <Folder
71
+                  app={app}
72
+                  folderData={c}
73
+                  onClickItem={this.handleClickContentItem}
74
+                  isLast={i === workspace.content.length - 1}
75
+                  key={c.id}
76
+                />
77
+              )
70 78
               : (
71 79
                 <FileItem
72 80
                   name={c.title}