mirror of
https://github.com/jxxghp/MoviePilot-Frontend.git
synced 2026-09-10 02:06:44 +08:00
fix(filebrowser): avoid duplicate list refresh (#731)
This commit is contained in:
@@ -342,7 +342,6 @@ onUnmounted(cleanupDrag)
|
||||
@pathchanged="pathChanged"
|
||||
@loading="loadingChanged"
|
||||
@refreshed="refreshPending = false"
|
||||
@filedeleted="refreshPending = true"
|
||||
@renamed="refreshPending = true"
|
||||
@items-updated="fileListUpdated"
|
||||
@switch-tree="switchDirTree"
|
||||
|
||||
@@ -72,9 +72,9 @@ const FileNavigatorStub = defineComponent({
|
||||
const FileListStub = defineComponent({
|
||||
name: 'FileList',
|
||||
props: ['refreshpending', 'sort', 'showTree'],
|
||||
emits: ['items-updated', 'loading', 'pathchanged', 'refreshed', 'switch-tree'],
|
||||
emits: ['items-updated', 'loading', 'pathchanged', 'refreshed', 'switch-tree', 'filedeleted'],
|
||||
template:
|
||||
'<div><button class="emit-loading" @click="$emit(`loading`, 1)" /><button class="emit-tree" @click="$emit(`switch-tree`, true)" /></div>',
|
||||
'<div><button class="emit-loading" @click="$emit(`loading`, 1)" /><button class="emit-tree" @click="$emit(`switch-tree`, true)" /><button class="emit-filedeleted" @click="$emit(`filedeleted`)" /></div>',
|
||||
})
|
||||
|
||||
function createBrowserProps() {
|
||||
@@ -266,6 +266,15 @@ describe('FileBrowser state and child contracts', () => {
|
||||
expect(wrapper.getComponent(FileListStub).props('refreshpending')).toBe(false)
|
||||
})
|
||||
|
||||
it('does not schedule a second list refresh after the child completes a delete', async () => {
|
||||
const wrapper = mountBrowser()
|
||||
|
||||
await wrapper.get('.emit-filedeleted').trigger('click')
|
||||
await nextTick()
|
||||
|
||||
expect(wrapper.getComponent(FileListStub).props('refreshpending')).toBe(false)
|
||||
})
|
||||
|
||||
it('forwards the latest file list snapshot to the directory navigator', async () => {
|
||||
localStorage.setItem('fileBrowser.showDirTree', 'true')
|
||||
const wrapper = mountBrowser()
|
||||
|
||||
Reference in New Issue
Block a user