optimize init method

This commit is contained in:
tangly1024.com
2023-01-20 13:23:54 +08:00
parent 9bc41254ba
commit 01839875f1
3 changed files with 20 additions and 19 deletions

View File

@@ -15,10 +15,17 @@ const GlobalContext = createContext()
*/
export function GlobalContextProvider({ children }) {
const [lang, updateLang] = useState(BLOG.LANG)
const [locale, updateLocale] = useState(generateLocaleDict(lang))
const [locale, updateLocale] = useState(generateLocaleDict(BLOG.LANG))
const [theme, setTheme] = useState(BLOG.THEME)
const [isDarkMode, updateDarkMode] = useState(false)
const [onLoading, changeLoadingState] = useState(false)
const [theme, setTheme] = useState(BLOG.THEME)
useEffect(() => {
initLocale(lang, locale, updateLang, updateLocale)
initDarkMode(isDarkMode, updateDarkMode)
initTheme(theme, changeTheme)
}, [])
Router.events.on('routeChangeStart', (...args) => {
changeLoadingState(true)
})
@@ -43,12 +50,6 @@ export function GlobalContextProvider({ children }) {
saveThemeToCookies(theme)
}
useEffect(() => {
initLocale(lang, locale, updateLang, updateLocale)
initDarkMode(isDarkMode, updateDarkMode)
initTheme(theme, changeTheme)
}, [])
return (
<GlobalContext.Provider value={{ onLoading, changeLoadingState, locale, updateLocale, isDarkMode, updateDarkMode, theme, setTheme, switchTheme, changeTheme }}>
{children}