diff --git a/src/layouts/index.tsx b/src/layouts/index.tsx
index 8eb1e9db..a56146b5 100644
--- a/src/layouts/index.tsx
+++ b/src/layouts/index.tsx
@@ -1,5 +1,5 @@
import React, { useEffect, useState } from 'react';
-import ProLayout from '@ant-design/pro-layout';
+import ProLayout, { PageLoading } from '@ant-design/pro-layout';
import {
enable as enableDarkMode,
disable as disableDarkMode,
@@ -89,7 +89,9 @@ export default function (props: any) {
!navigator.userAgent.includes('Chrome');
const isQQBrowser = navigator.userAgent.includes('QQBrowser');
- return (
+ return loading ? (
+
+ ) : (
{
const [select, setSelect] = useState('config.sh');
const [data, setData] = useState([]);
const editorRef = useRef(null);
+ const [confirmLoading, setConfirmLoading] = useState(false);
const getConfig = (name: string) => {
request.get(`${config.apiPrefix}configs/${name}`).then((data: any) => {
@@ -37,6 +38,7 @@ const Config = ({ headerStyle, isPhone, theme }: any) => {
};
const updateConfig = () => {
+ setConfirmLoading(true);
const content = editorRef.current
? editorRef.current.getValue().replace(/\r\n/g, '\n')
: value;
@@ -47,6 +49,7 @@ const Config = ({ headerStyle, isPhone, theme }: any) => {
})
.then((data: any) => {
message.success(data.message);
+ setConfirmLoading(false);
});
};
@@ -76,7 +79,12 @@ const Config = ({ headerStyle, isPhone, theme }: any) => {
defaultValue="config.sh"
onSelect={onSelect}
/>,
-
) : (
-
+
)}
>
) : (