|
1 |
| - |
2 | 1 | <!DOCTYPE html>
|
3 | 2 | <html lang="en">
|
4 | 3 | <head>
|
|
95 | 94 | cursor: pointer;
|
96 | 95 | transition: all 0.3s;
|
97 | 96 | }
|
98 |
| - .upload-area:hover, .upload-area.drag-over { |
| 97 | + .upload-area.drag-over { |
99 | 98 | border-color: #409eff;
|
100 | 99 | background-color: rgba(64, 158, 255, 0.1);
|
101 | 100 | }
|
@@ -157,20 +156,33 @@ <h1>File Browser</h1>
|
157 | 156 | @dragenter.prevent="isDragOver = true"
|
158 | 157 | @dragleave.prevent="isDragOver = false"
|
159 | 158 | @dragover.prevent
|
160 |
| - @drop.prevent="handleFileDrop" |
161 |
| - @click="$refs.fileInput.click()"> |
| 159 | + @drop.prevent="handleFileDrop"> |
162 | 160 | <input
|
163 | 161 | type="file"
|
164 | 162 | ref="fileInput"
|
165 | 163 | multiple
|
| 164 | + style="display: none" |
| 165 | + @change="handleFileSelect"> |
| 166 | + <input |
| 167 | + type="file" |
| 168 | + ref="folderInput" |
| 169 | + multiple |
166 | 170 | webkitdirectory
|
167 | 171 | style="display: none"
|
168 | 172 | @change="handleFileSelect">
|
169 | 173 | <el-icon><upload-filled /></el-icon>
|
170 | 174 | <div class="upload-text">
|
171 |
| - <span>拖放文件或文件夹到此处或点击上传</span> |
| 175 | + <span>选择要上传的文件或文件夹(支持多选)</span> |
| 176 | + <div class="upload-tip">可拖拽文件或文件夹到此处</div> |
| 177 | + </div> |
| 178 | + <div class="upload-actions"> |
| 179 | + <el-button type="primary" @click="$refs.fileInput.click()"> |
| 180 | + 上传文件 |
| 181 | + </el-button> |
| 182 | + <el-button type="primary" @click="$refs.folderInput.click()"> |
| 183 | + 上传文件夹 |
| 184 | + </el-button> |
172 | 185 | </div>
|
173 |
| - <div class="upload-tip">支持多文件和文件夹上传</div> |
174 | 186 | </div>
|
175 | 187 |
|
176 | 188 | <!-- 上传进度 -->
|
@@ -318,6 +330,7 @@ <h1>File Browser</h1>
|
318 | 330 | const isDragOver = ref(false);
|
319 | 331 | const uploadProgress = ref([]);
|
320 | 332 | const fileInput = ref(null);
|
| 333 | + const folderInput = ref(null); |
321 | 334 | const previewDialog = ref({
|
322 | 335 | visible: false,
|
323 | 336 | title: '',
|
@@ -648,6 +661,7 @@ <h1>File Browser</h1>
|
648 | 661 | isDragOver,
|
649 | 662 | uploadProgress,
|
650 | 663 | fileInput,
|
| 664 | + folderInput, |
651 | 665 | handleItemClick,
|
652 | 666 | navigateTo,
|
653 | 667 | getPathUpTo,
|
|
0 commit comments