From 967366866d20b593161eae91d23608e583f297f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9B=90=EB=8D=94?= Date: Sun, 10 Jan 2021 22:48:46 +0900 Subject: [PATCH] fix: https://github.com/koreanbots/v2-testing/issues/2 --- pages/_app.tsx | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/pages/_app.tsx b/pages/_app.tsx index 1ae2c19..ac50208 100644 --- a/pages/_app.tsx +++ b/pages/_app.tsx @@ -1,6 +1,6 @@ import Head from 'next/head' import type { AppProps } from 'next/app' -import { ThemeProvider } from 'next-themes' +import { ThemeProvider, useTheme } from 'next-themes' import { useEffect, useState } from 'react' import Footer from '../components/Footer' @@ -19,6 +19,8 @@ import '../github-markdown.css' let systemColor export default function App({ Component, pageProps }: AppProps): JSX.Element { const [ betaKey, setBetaKey ] = useState('') + const [ theme, setDefaultTheme ] = useState(undefined) + const { setTheme } = useTheme() useEffect(() => { setBetaKey(localStorage.betaKey) console.log( @@ -29,16 +31,22 @@ export default function App({ Component, pageProps }: AppProps): JSX.Element { '%c' + '이곳에 코드를 붙여넣으면 공격자에게 엑세스 토큰을 넘겨줄 수 있습니다!!', 'color: #ff0000; font-size: 20px; font-weight: bold;' ) + }, []) + + useEffect(()=> { try { systemColor = window.matchMedia('(prefers-color-scheme: dark)')?.matches ? 'dark' : 'light' } catch (e) { systemColor = 'dark' } - if (!localStorage.theme || !['dark', 'light'].includes(localStorage.theme)) + if (!localStorage.theme || !['dark', 'light'].includes(localStorage.theme)) { localStorage.setItem('theme', systemColor) + setDefaultTheme(systemColor) + } + // eslint-disable-next-line react-hooks/exhaustive-deps }, []) return ( - + 한국 디스코드봇 리스트