diff --git a/src/App.vue b/src/App.vue
index cb73053f..a9dce3da 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -12,50 +12,19 @@
diff --git a/src/hooks/index.ts b/src/hooks/index.ts
index e69de29b..2cead04f 100644
--- a/src/hooks/index.ts
+++ b/src/hooks/index.ts
@@ -0,0 +1 @@
+export * from '@/hooks/themeHook'
\ No newline at end of file
diff --git a/src/hooks/themeHook.ts b/src/hooks/themeHook.ts
new file mode 100644
index 00000000..408a1ca1
--- /dev/null
+++ b/src/hooks/themeHook.ts
@@ -0,0 +1,42 @@
+import { computed } from 'vue'
+import { darkTheme, GlobalThemeOverrides } from 'naive-ui'
+import { useDesignStore } from '@/store/modules/designStore/designStore'
+import { borderRadius } from '@/settings/designSetting'
+
+/**
+ * 设置全局主题
+ */
+export const getThemeOverridesHook = () => {
+ const designStore = useDesignStore()
+ const getDarkTheme = computed(
+ (): GlobalThemeOverrides => {
+ const commonObj = {
+ common: {
+ borderRadius
+ }
+ }
+ const lightObject = {
+ common: {
+ ...commonObj.common
+ }
+ }
+ const dartObject = {
+ common: {
+ primaryColor: designStore.appTheme,
+ ...commonObj.common
+ },
+ LoadingBar: {
+ colorLoading: designStore.appTheme
+ }
+ }
+ return designStore.getDarkTheme ? dartObject : lightObject
+ }
+ )
+ return getDarkTheme
+}
+
+// 返回暗黑主题
+export const getDarkThemeHook = () => {
+ const designStore = useDesignStore()
+ return computed(() => (designStore.getDarkTheme ? darkTheme : undefined))
+}
diff --git a/src/styles/common/mixins/mixins.scss b/src/styles/common/mixins/mixins.scss
index f0c6acb6..0ab68436 100644
--- a/src/styles/common/mixins/mixins.scss
+++ b/src/styles/common/mixins/mixins.scss
@@ -10,7 +10,7 @@
}
@mixin deep() {
- ::v-deep *{
+ ::v-deep {
@content;
}
}
diff --git a/src/utils/plugin.ts b/src/utils/plugin.ts
index 94add944..9cd12611 100644
--- a/src/utils/plugin.ts
+++ b/src/utils/plugin.ts
@@ -26,7 +26,7 @@ import { renderIcon } from '@/utils'
const tip = {
delete: '是否删除此数据'
}
- dialogFn({
+ const instance = dialogFn({
title: '提示',
icon: renderIcon(InformationCircleIcon, { size: dialogIconSize }),
content: message || tip[type] || '',
@@ -34,10 +34,10 @@ import { renderIcon } from '@/utils'
negativeText: '取消',
maskClosable: maskClosable,
onPositiveClick: () => {
- onPositiveCallback && onPositiveCallback()
+ onPositiveCallback && onPositiveCallback(instance)
},
onNegativeClick: () => {
- onNegativeCallback && onNegativeCallback()
+ onNegativeCallback && onNegativeCallback(instance)
}
})
}
\ No newline at end of file