fix(AddFile): 修复添加文件信息不自动隐藏问题

This commit is contained in:
ApplePine 2025-07-02 13:19:02 +08:00
parent 0208de66bb
commit 806f91e325
2 changed files with 30 additions and 3 deletions

View File

@ -14,7 +14,7 @@
<div class="drop-text">
<p>点击选择文件或拖放到此处</p>
<el-button type="primary" size="small" @click.stop="selectFile">选择文件</el-button>
<el-button size="small" @click.stop="selectDirectory">选择文件夹</el-button>
<el-button type="success"size="small" @click.stop="selectDirectory">选择文件夹</el-button>
</div>
</div>
@ -31,7 +31,7 @@
</template>
<script>
import { ref } from 'vue'
import { ref, watch } from 'vue'
import { Upload } from '@element-plus/icons-vue'
export default {
@ -39,11 +39,28 @@ export default {
components: {
Upload,
},
props: {
reset: {
type: Boolean,
default: false
}
},
emits: ['file-selected'],
setup(props, { emit }) {
const selectedFile = ref(null)
const isDragging = ref(false)
//
watch(() => props.reset, (newVal) => {
if (newVal) {
resetFileSelector()
}
})
const resetFileSelector = () => {
selectedFile.value = null
}
const selectFile = async () => {
try {
const file = await window.electronAPI.selectFile()
@ -104,6 +121,7 @@ export default {
selectFile,
selectDirectory,
handleDrop,
resetFileSelector
}
},
}

View File

@ -3,7 +3,7 @@
<h1>添加新文件</h1>
<div class="file-selector-wrapper">
<FileSelector @file-selected="handleFileSelected" />
<FileSelector @file-selected="handleFileSelected" :reset="resetSignal" />
</div>
<el-form
@ -104,6 +104,7 @@ export default {
const fileFormRef = ref(null)
const selectedFile = ref(null)
const isSubmitting = ref(false)
const resetSignal = ref(false)
//
const categories = ref([])
@ -222,6 +223,13 @@ export default {
}
const resetForm = () => {
resetSignal.value = true //
// 便
setTimeout(() => {
resetSignal.value = false
}, 100)
selectedFile.value = null
fileForm.filePath = ''
fileForm.fileName = ''
@ -252,6 +260,7 @@ export default {
availableTags,
selectedTag,
isSubmitting,
resetSignal,
handleFileSelected,
handleTagChange,
removeTag,