From 579b9bd86698fc30b2be61c0fba8733607e1889e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?21=E4=B8=96=E7=BA=AA=E5=B0=8F=E5=85=AB=E8=B7=AF?= <2529156631@qq.com> Date: Wed, 16 Oct 2024 00:01:55 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=9F=E8=83=BD=EF=BC=88=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E5=AE=B9=E5=99=A8=EF=BC=89=EF=BC=9A=E9=A1=B5=E9=9D=A2=E5=AE=B9?= =?UTF-8?q?=E5=99=A8=E6=B7=BB=E5=8A=A0=E9=AA=A8=E6=9E=B6=E5=B1=8F=E5=B1=95?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../coreshop-page-content.vue | 53 +++++++++++++++++++ .../coreshop-page/coreshop-page.vue | 53 ++++++++++++++----- .../CoreShop/core/hooks/index.ts | 1 + .../CoreShop/core/hooks/use-loading.ts | 11 ++++ .../CoreShop/pages/home/home.vue | 34 +++++++----- 5 files changed, 126 insertions(+), 26 deletions(-) create mode 100644 CoreCms.Net.Uni-App/CoreShop/components/coreshop-page-content/coreshop-page-content.vue create mode 100644 CoreCms.Net.Uni-App/CoreShop/core/hooks/use-loading.ts diff --git a/CoreCms.Net.Uni-App/CoreShop/components/coreshop-page-content/coreshop-page-content.vue b/CoreCms.Net.Uni-App/CoreShop/components/coreshop-page-content/coreshop-page-content.vue new file mode 100644 index 00000000..013a4e51 --- /dev/null +++ b/CoreCms.Net.Uni-App/CoreShop/components/coreshop-page-content/coreshop-page-content.vue @@ -0,0 +1,53 @@ + + + \ No newline at end of file diff --git a/CoreCms.Net.Uni-App/CoreShop/components/coreshop-page/coreshop-page.vue b/CoreCms.Net.Uni-App/CoreShop/components/coreshop-page/coreshop-page.vue index 013a4e51..770e6903 100644 --- a/CoreCms.Net.Uni-App/CoreShop/components/coreshop-page/coreshop-page.vue +++ b/CoreCms.Net.Uni-App/CoreShop/components/coreshop-page/coreshop-page.vue @@ -1,5 +1,5 @@ \ No newline at end of file diff --git a/CoreCms.Net.Uni-App/CoreShop/core/hooks/index.ts b/CoreCms.Net.Uni-App/CoreShop/core/hooks/index.ts index 57e9de48..015a01b7 100644 --- a/CoreCms.Net.Uni-App/CoreShop/core/hooks/index.ts +++ b/CoreCms.Net.Uni-App/CoreShop/core/hooks/index.ts @@ -1,2 +1,3 @@ /** 系统配置 */ export * from './systemInfo'; +export * from './use-loading'; diff --git a/CoreCms.Net.Uni-App/CoreShop/core/hooks/use-loading.ts b/CoreCms.Net.Uni-App/CoreShop/core/hooks/use-loading.ts new file mode 100644 index 00000000..6c6213d1 --- /dev/null +++ b/CoreCms.Net.Uni-App/CoreShop/core/hooks/use-loading.ts @@ -0,0 +1,11 @@ +import { Ref } from "vue"; + +export function useLoadingFn, R>(fn : (...args : T) => Promise, loading : Ref) { + function wrapper(this, ...args : T) { + loading.value = true; + return new Promise((resolve, reject) => + Promise.resolve(fn.apply(this, args)).then(resolve).catch(reject) + ).finally(() => loading.value = false); + } + return wrapper; +} \ No newline at end of file diff --git a/CoreCms.Net.Uni-App/CoreShop/pages/home/home.vue b/CoreCms.Net.Uni-App/CoreShop/pages/home/home.vue index fee2b800..2b799e76 100644 --- a/CoreCms.Net.Uni-App/CoreShop/pages/home/home.vue +++ b/CoreCms.Net.Uni-App/CoreShop/pages/home/home.vue @@ -26,7 +26,7 @@