From c551083fa429f73acfb7b868cbf7ce508ea9c4bf Mon Sep 17 00:00:00 2001 From: jxxghp Date: Wed, 21 Feb 2024 17:49:20 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=8F=92=E4=BB=B6=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E5=8A=A0=E8=BD=BD=E9=80=9F=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- src/views/plugin/PluginCardListView.vue | 77 +++++++++++++++++-------- 2 files changed, 55 insertions(+), 24 deletions(-) diff --git a/package.json b/package.json index 2abb6642..db8f5cc0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "moviepilot", - "version": "1.6.4-2", + "version": "1.6.5", "private": true, "bin": "dist/service.js", "scripts": { diff --git a/src/views/plugin/PluginCardListView.vue b/src/views/plugin/PluginCardListView.vue index c0a7378a..89b61780 100644 --- a/src/views/plugin/PluginCardListView.vue +++ b/src/views/plugin/PluginCardListView.vue @@ -5,25 +5,21 @@ import NoDataFound from '@/components/NoDataFound.vue' import PluginAppCard from '@/components/cards/PluginAppCard.vue' import PluginCard from '@/components/cards/PluginCard.vue' -// 数据列表 +// 已安装插件列表 const dataList = ref([]) +// 未安装插件列表 +const uninstalledList = ref([]) + // 是否刷新过 const isRefreshed = ref(false) +// APP市场是否加载完成 +const isAppMarketLoaded = ref(false) + // APP市场窗口 const PluginAppDialog = ref(false) -// 获取已安装的插件列表 -const getInstalledPluginList = computed(() => { - return dataList.value.filter(item => item.installed) -}) - -// 获取未安装或者有更新的插件列表 -const getUninstalledPluginList = computed(() => { - return dataList.value.filter(item => !item.installed || item.has_update) -}) - // 关闭插件市场窗口 function pluginDialogClose() { PluginAppDialog.value = false @@ -31,14 +27,19 @@ function pluginDialogClose() { // 新安装了插件 function pluginInstalled() { - fetchData() + fetchInstalledPlugins() pluginDialogClose() + fetchUninstalledPlugins() } // 获取插件列表数据 -async function fetchData() { +async function fetchInstalledPlugins() { try { - dataList.value = await api.get('plugin/') + dataList.value = await api.get('plugin/', { + params: { + state: 'installed', + }, + }) isRefreshed.value = true } catch (error) { @@ -46,8 +47,26 @@ async function fetchData() { } } +// 获取未安装插件列表数据 +async function fetchUninstalledPlugins() { + try { + uninstalledList.value = await api.get('plugin/', { + params: { + state: 'market', + }, + }) + isAppMarketLoaded.value = true + } + catch (error) { + console.error(error) + } +} + // 加载时获取数据 -onBeforeMount(fetchData) +onBeforeMount(() => { + fetchInstalledPlugins() + fetchUninstalledPlugins() +})