feat: Add allowRefresh prop to DownloaderCard component

This commit is contained in:
jxxghp
2024-09-08 13:57:58 +08:00
parent 30c3ad6c90
commit ee10616acf
2 changed files with 19 additions and 4 deletions

View File

@@ -12,6 +12,11 @@ const props = defineProps({
type: Object as PropType<DownloaderConf>,
required: true,
},
// 是否允许刷新数据
allowRefresh: {
type: Boolean,
default: true,
},
})
// 定义触发的自定义事件
@@ -43,6 +48,9 @@ const downloaderInfo = ref<DownloaderConf>({
// 调用API查询下载器数据
async function loadDownloaderInfo() {
if (!props.allowRefresh) {
return
}
try {
const res: DownloaderInfo = await api.get('dashboard/downloader', {
params: {
@@ -99,7 +107,6 @@ function onClose() {
onMounted(async () => {
if (props.downloader.enabled) {
await loadDownloaderInfo()
timeoutTimer = setTimeout(loadDownloaderInfo, 3000)
}
})

View File

@@ -13,8 +13,8 @@ const SystemSettings = ref({
APP_DOMAIN: '',
})
// 从 provide 中获取全局设置
const globalSettings: any = inject('globalSettings')
// 是否发送请求的总开关
const isRequest = ref(true)
// 选中的媒体服务器
const mediaServers = ref<MediaServerConf[]>([])
@@ -149,6 +149,14 @@ onMounted(() => {
loadMediaServerSetting()
loadSystemSettings()
})
onActivated(async () => {
isRequest.value = true
})
onDeactivated(() => {
isRequest.value = false
})
</script>
<template>
@@ -197,7 +205,7 @@ onMounted(() => {
:component-data="{ 'class': 'grid gap-3 grid-app-card' }"
>
<template #item="{ element }">
<DownloaderCard :downloader="element" @close="removeDownloader(element)" @change="onDownloaderChange" />
<DownloaderCard :downloader="element" @close="removeDownloader(element)" @change="onDownloaderChange" :allow-refresh="isRequest" />
</template>
</draggable>
</VCardText>