it + it dev nextjs jotai zustand [React๐] ์ฐจ์ธ๋ ์ํ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ, Jotai VS Zustand โญ (Feat. Recoil)๋ค์ด๊ฐ๋ฉฐ ํ๋ก ํธ์๋ ๋ถ์ผ๋ ๋ณํ๊ฐ ์ ๋ง ๋น ๋ฅด๊ณ ์ด์์์ด ๋ฐ์ ํ๊ณ ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ํ๋ ๊ฒ๋ง ์ด์ฌํํ๋ฉด ์ด๋์ ๋ค์ณ์ง๊ณ ์๋ ์์ ์ ๋ฐ๊ฒฌํ ์ ์์ต๋๋คโฆ ๐ญ ๊ทธ ์ค์์๋ ๊ฐ์ฅ ์ฐ๋ฆฌ๋ฅผ ๊น๋ค๋กญ๊ฒ ๋ง๋๋ ๋ถ์ผ๊ฐ ์์ฃ , ๋ฐ๋ก ์ํ๊ด๋ฆฌ (state management) ์ ๋๋ค. ๋ฆฌ์กํธ์ Next JS ๋ฑ ํ๋ ์์ํฌ๋ค์ด ์ฌ๋ฌ ๋ฌธ์ ์ํฉ๋ค์ ํด๊ฒฐํด์ฃผ์๋ค๊ณ ํ์ง๋ง ์ํ๊ด๋ฆฌ์ ๋ํด์๋ ์ฌ์ ํ ์๋ฌธ์ ๋๋ค. ์ฝ๋๊ฐ ๊ธธ์ด์ง๊ณ , ๋ฌด์ธ๊ฐ ๋ชจ๋ฅผ ๋ถํธํจ์ด ํญ์ ์กด์ฌํด์์ฃ . Redux ๋ Mobx, ๊ฑฐ๊ธฐ์ ๋ ๋์๊ฐ์๋ Redux ์ฌ์ฉ์ ๊ฐ์ํ์ํจ Redux toolkit ๋ํ ๋ฑ์ฅํ์ง๋ง ์์ง๋ ์ด ๋ถ๋ถ์ ๋ฐ์ ํ ๊ธธ์ด ๋ง์ด ๋จ์๋ค๊ณ ์๊ฐ๋ฉ๋๋ค. ๊ทธ ์ค์ ์ต๊ทผ๋ค์ด ์ ์ ์ฃผ๋ชฉ๋ฐ๊ณ ์๋ 2๊ฐ์ง ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์๊ฐํ๊ณ ์ ํฉ๋๋ค! ๋ฐ๋ก Jotai.. wono | discuss | tweet + it dev nextjs jotai store Using Jotai only as an external provider-less store compared to Zustand ยท pmndrs/jotai ยท Discussion #2444Using Jotai only as an external provider-less store compared to Zustand wono | discuss | tweet + it dev nextjs jotai issue Next 14: Specified module format (CommonJs) is not matching the module format of the source code (EcmaScript Modules) ยท pmndrs/jotai ยท Discussion #2579Next 14: Specified module format (CommonJs) is not matching the module format of the source code (EcmaScript Modules) wono | discuss | tweet + it dev nextjs jotai example next.js/examples/with-jotai at canary ยท vercel/next.jsThe React Framework. Contribute to vercel/next.js development by creating an account on GitHub. wono | discuss | tweet + it dev nextjs server-only cache context Sharing User Data Between Server Components of Different Pages in Next.js 14 ยท vercel/next.js ยท Discussion #67330Sharing User Data Between Server Components of Different Pages in Next.js 14 wono | discuss | tweet + it dev nextjs context cache NextJS ์ดํด ํด๋ณด๊ธฐ_5 - Server Component์ Client Component์ ๊ตฌ์ฑ ํจํดNextJS App Route์์ Server Component์ Client Component ๋น๊ต wono | discuss | tweet + it dev nextjs context Next.js 14 ๊ฐ์ข 12ํธ. ์๋ฒ ์ปดํฌ๋ํธ ํจํด - ์๋ฒ ์ ์ฉ ์ฝ๋(server-only), ์จ๋ ํํฐ ํจํค์ง, ์ปจํ ์คํธ ํ๋ก๋ฐ์ด๋(Context Provider) ํ์ฉํ๊ธฐ์๋ฒ ์ปดํฌ๋ํธ ํจํด - ์๋ฒ ์ ์ฉ ์ฝ๋, ์จ๋ ํํฐ ํจํค์ง, ์ปจํ ์คํธ ํ๋ก๋ฐ์ด๋ ํ์ฉํ๊ธฐ wono | discuss | tweet + it dev nextjs context Next.js - ์๋ฒ ์ปดํฌ๋ํธ์์ useContext() ์ฌ์ฉํ๊ธฐ๋ฅ์คํธjs๋ ์๋ฒ์ปดํฌ๋ํธ์ ํด๋ผ์ด์ธํธ ์ปดํฌ๋ํธ๋ก ๋๋์ด์ง๋ค ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ React ๊ธฐ๋ฐ์ ํ ๋ค์ ์ฌ์ฉํ ๋๋ ํ๋ฒ๋ ์๊ฐํด๋ณด์์ผ ํ๋ค ์ค๋์ useContext() ๋ฅผ ์ด๋ป๊ฒ ์ฌ์ฉํ๋ ์ง ์์๋ณผ ๊ฒ์ด๋ค Next.js - ์๋ฒ ์ปดํฌ๋ํธ์์ useContext() ์ฌ์ฉํ๊ธฐ ๋ฆฌ์กํธ์์ ์ ์ญ ๋ณ์๋ฅผ ์ ๋ฌํ๊ธฐ ์ํด redux / useContext ๋ฅผ ์ฌ์ฉํ์๋ค Next.js์์ useContext ๋ฅผ ์ฌ์ฉํ๋ ค๊ณ ํ๋ ํ๊ฐ์ง ์ ์ฝ์ด ์์๋ค You are using createContext in a Server Component but it only works in Client Components โ ๋ฐ๋ก ํด๋ผ์ด์ธํธ ์ปดํฌ๋ํธ์์๋ง ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ด๋ค createContext in a Server Compo.. wono | discuss | tweet + it lang naming Tips on naming boolean variables - Cleaner CodeOriginally posted at michaelzanggl.com. Subscribe to my newsletter to never miss out on new... Tagged with codequality, refactorit. wono | discuss | tweet + it dev nextjs jwt jose [Next.js@13] jwt ๋ผ์ด๋ธ๋ฌ๋ฆฌ, jsonwebtoken ๋์ jose[Next.js@13] jsonwebtoken ๋์ jose Next.js์์ jwt๋ฅผ ์์ฑํ ๋ ๋ ์ฐ๋ jsonwebtoken ๋ชจ๋์ ์๋ํ๋ค. ๊ฒฐ๊ณผ๋ ์ค๋ฅ! ๊ณต์ ๋ฌธ์์ ๋ฐ๋ฅด๋ฉด Edge ๋ฐํ์์ ๋ชจ๋ Node.js API๋ฅผ ์ง์ํ์ง ์๋๋ค๊ณ ์๋ ค์ค๋ค. error - Error: The edge runtime does not support Node.js 'buffer' module. jose ๊ทธ๋์ ๋์ฒด ๋ชจ๋์ ์ฐพ๋ค๊ฐ jose ๋ผ๋ ๋ชจ๋์ ์ฐพ์๋ค. ํด๋น ๋ชจ๋์ ์ข ์์ฑ์์ด ์๋ํ๋ค. ๋ด๋ถ์ ๊ฐ ๋ชจ๋๋ค์ ๋ ๋ฆฝ์ ์ด๊ธฐ์ ํธ๋ฆฌ์์ดํน๋ ๊ฐ๋ฅํ๋ค๊ณ ํ๋ค. ์ง์ ๋ชฉ๋ก์ ๋ณด๋ฉด ๋งจ ์๋์ ๋น๋นํ๊ฒ Vercel์ด ์๋ค. ํ์ฌ jwt ์์ฑ๊ณผ ๋ณตํธํ๋ฅผ jose๋ฅผ ํตํด ๋ชจ๋ํ์์ผ์ ์ฌ์ฉํ๊ณ ์๋ค. import { JWTPaylo.. wono | discuss | tweet + it dev nextjs build eslint eslint ์ ์ฉ์ ์ด์(rules ๋ฌด์, ์ฐ์ ์์)๐ ์ด๋ฒ์๊ฐ์๋ eslint์ ์ฉ์ ๋ง๋ ์ ์๋ ์ด์์ ํด๊ฒฐ๋ฐฉ๋ฒ์ ์์๋ณด์๋ค! 1. ์ผ๋ถ rules ๋ฌด์ํ๋ ๋ฒ ํน์ ์ฝ๋์์ eslint์ rules์ ๋ฌด์ํด์ผํ ๋๊ฐ ์๋ค. ์ด๋ ์ฐ๋ฆฌ๋ ํ์ผ ์์ฒด๋ฅผ ๋ฌด์ํ๊ฑฐ๋, ๋ค์ ๋ผ์ธ, ํน์ ๋ฒ์์ ์ฝ๋๋ฅผ ๋ฌด์ํ ์ ์๋ค. ๋ง์ฝ index.js์ testํจ์์์ no-unused-vars๋ฅผ ๋ฌด์ํ๊ณ ์ถ๋ค๋ฉด ์ด๋ป๊ฒ ํด์ผํ ๊น? (1) ํน์ ํ์ผ ๋ฌด์ ๋ง์ฝ ํ์ผ ์ฐจ์์์ ๋ฌด์ํ๋ ค๋ฉด .eslintignore์ ํ์ผ๋ช ์ ์ถ๊ฐํ๋ฉด ๋๋ค. ํ์ง๋ง ์ด ๊ฒฝ์ฐ, index.js์ ๋ํด ์ ์ฒด eslint๋ฅผ ์ ์ฉํ์ง ์๋ ๋จ์ ์ด ์๋ค. // .**eslintignore** index.js (2) ๋ค์ ๋ผ์ธ๋ง ๋ฌด์ ๋ ๋ฒ์งธ ๋ฐฉ๋ฒ์ผ๋ก ์ฃผ์์ ์ด์ฉํ ์ ์๋ค. ๋ง์ฝ ๋ค์ ๋ผ์ธ๋ง ๋ฌด์ํ๊ณ ์ถ.. wono | discuss | tweet + it dev nextjs build eslint How to disable typescript for failing my builds with nextjs?Getting a bunch of type errors upon running yarn next build, for example: Type error: Property 'href' does not exist on type '{ name: string; }'. Which causes my build to fail. Is there a command i... wono | discuss | tweet + it dev nextjs build eslint [Next.js 14] ํ๋ก์ ํธ ๋น๋ ์ ๋ฐ์ํ๋ no-console ์๋ฌ ํด๊ฒฐ [ES-Lint]console.log์ผ๋ฐ์ ์ผ๋ก JavaScript ํ๋ก๊ทธ๋๋ฐ ์ ๋๋ฒ๊น ๋ชฉ์ ์ผ๋ก ๋ธ๋ผ์ฐ์ ์ console.log ๋ฉ์๋๋ฅผ ์์ฃผ ์ฌ์ฉํ ๊ฒ์ด๋ค.๋ฌผ๋ก ์ฝ์ ๋ก๊ทธ๋ ๊ฐํธํ ๋๋ฒ๊น ๋๊ตฌ์ด๊ธด ํ์ง๋ง,๋ณด์ ์ด์๊ฐ ๋ฐ์ํ ์ฐ๋ ค๊ฐ ์๊ธฐ์ ์ค์ ๋ก ๋ฐฐํฌ๋๋ ์น ์ดํ๋ฆฌ์ผ์ด์ ์๋ ํฌํจ๋์ง ์๋ ๊ฒ์ด ์ข๋ค.ย ESLintESLint๋ ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋์์ ์๋ฌ๊ฐ ์๋ ๋ถ๋ถ์ ํ์๋ฅผ ํด์ฃผ๋ ์ ์ ์ฝ๋ ๋ถ์ ๋๊ตฌ์ด๋ค.์ผ๋ฐ์ ์ผ๋ก Typescript, Prettier๊ณผ ํจ๊ป ์น ํ๋ก๊ทธ๋๋ฐ์ ํ ๋ ํจ๊ป ์ค์น๋๋ฉฐ, ์ฝ๋์ ํ๋ฆฌํฐ๋ฅผ ๋ณด์ฅํด์ค๋ค.ESLint๋ ํ๋์ ๊ท์น์ผ๋ก no-console ๋ฃฐ์ ๊ฐ์ง๊ณ ์๋๋ฐ,๋น๋(npm run build) ์ ์ฝ์ ๋ก๊ทธ๊ฐ ํฌํจ๋์ด ์์ ๊ฒฝ์ฐ ๊ท์น ์๋ฐ์ผ๋ก ์ฒ๋ฆฌํ์ฌ ๋น๋๊ฐ ์ ์์ ์ผ๋ก ์๋ฃ๋์ง ์๋๋ค.ย n.. wono | discuss | tweet + it dev nextjs jose [Next.js@13] jwt ๋ผ์ด๋ธ๋ฌ๋ฆฌ, jsonwebtoken ๋์ jose[Next.js@13] jsonwebtoken ๋์ jose Next.js์์ jwt๋ฅผ ์์ฑํ ๋ ๋ ์ฐ๋ jsonwebtoken ๋ชจ๋์ ์๋ํ๋ค. ๊ฒฐ๊ณผ๋ ์ค๋ฅ! ๊ณต์ ๋ฌธ์์ ๋ฐ๋ฅด๋ฉด Edge ๋ฐํ์์ ๋ชจ๋ Node.js API๋ฅผ ์ง์ํ์ง ์๋๋ค๊ณ ์๋ ค์ค๋ค. error - Error: The edge runtime does not support Node.js 'buffer' module. jose ๊ทธ๋์ ๋์ฒด ๋ชจ๋์ ์ฐพ๋ค๊ฐ jose ๋ผ๋ ๋ชจ๋์ ์ฐพ์๋ค. ํด๋น ๋ชจ๋์ ์ข ์์ฑ์์ด ์๋ํ๋ค. ๋ด๋ถ์ ๊ฐ ๋ชจ๋๋ค์ ๋ ๋ฆฝ์ ์ด๊ธฐ์ ํธ๋ฆฌ์์ดํน๋ ๊ฐ๋ฅํ๋ค๊ณ ํ๋ค. ์ง์ ๋ชฉ๋ก์ ๋ณด๋ฉด ๋งจ ์๋์ ๋น๋นํ๊ฒ Vercel์ด ์๋ค. ํ์ฌ jwt ์์ฑ๊ณผ ๋ณตํธํ๋ฅผ jose๋ฅผ ํตํด ๋ชจ๋ํ์์ผ์ ์ฌ์ฉํ๊ณ ์๋ค. import { JWTPaylo.. wono | discuss | tweet + it dev nextjs jose jsonwebtoken NEXTjs (jose)next.js์์ jsonwebtoken ์๋ฌ๋ฏธ๋ค์จ์ด๋ ๋ ธ๋์ ๋ฐํ์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๊ณ ์์ผ๋ Edge ๋ฐํ์์ ๋ ธ๋ ํญ๋ชฉ์ ์ง์ํ์ง ์๋๋ค.jsonwebtoken jwt.verify(token, ); jose await jwtVerify(token, new Text wono | discuss | tweet + it dev nextjs jwt refresh [Next.JS] ์ฌ์ฉ์ ์ธ์ฆ ๋ฐ 401์ ์ํ middleware ์ค์ [Next.JS] ์ฌ์ฉ์ ์ธ์ฆ ๋ฐ 401์ ์ํ middleware ์ค์ wono | discuss | tweet + it dev nextjs jwt Next.js 14 App Router๋ก JWT ๊ธฐ๋ฐ ์ธ์ ์ธ์ฆ ๊ตฌํํ๊ธฐ์ด ํํ ๋ฆฌ์ผ์์๋ Next.js 14์ App Router๋ฅผ ์ฌ์ฉํด ์จ๋ํํฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์ด JWT ๊ธฐ๋ฐ์ ์ธ์ ์ธ์ฆ์ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ๋ค๋ฃน๋๋ค. wono | discuss | tweet + it dev nextjs nextauth ๋๋ฆฌํํธ์ myCodings๋๋ฆฌํํธ์ myCodings.fly.dev! wono | discuss | tweet + it dev nextjs jwt refresh [๋๋ง์ ๋ช ์ธ์ง ํ๋ก์ ํธ] NextJS(^14.1) ์์ ์ ์ฉํ accessToken ์ ์ด์ฉํ ํ ํฐ ์ธ์ฆ์์ refresh + access ๋ฐฉ์์ผ๋ก ์์ ์ค๋์ ๋ช ์ธ ์ด ํฌ์คํธ์ ๋ชฉ์ ๋๋ณด๊ธฐ ์ด๋ฒ์ ์ฝ 1๋ฌ์ ๊ธฐ๊ฐ๋์ ๋๋ง์ ๋ช ์ธ์ง ํ๋ก์ ํธ์ ๋ฆฌ์กํธ์ ๋ฉํ ํ๋ ์์ํฌ์ธ NextJS 14.1 ๋ฒ์ ์ ์ฌ์ฉํ์์ต๋๋ค. ์ด ํ๋ก์ ํธ์ ๋ก๊ทธ์ธ ์ธ์ฆ์ ๊ตฌํํ๊ธฐ ์ํด์ ๊ฐํธํ ์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ธ next-auth( โ ํ์ฌ๋ auth.js ๋ก ์๋จ์ฅ์ค)์ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉ ํ์ง ์๊ณ , ์ ํต์ ์ธ ๋ฐฉ์์ JWT ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉํด์ ์ธ์ฆ์ ๊ตฌํํ์์ต๋๋ค. ์ด ํฌ์คํธ์ ๋ชฉ์ ์ ๊ธฐ์กด ํ๋ก์ ํธ์ ์ ์ฉ๋ jwt ์ธ์ฆ ๋ฐฉ์(accessToken ๊ธฐ๋ฐ)์ ๋ณด์์ ๋ฌธ์ ์ ์ ์ธ์ํ๊ณ , ์ด๋ฅผ ๊ฐ์ ํ๊ธฐ ์ํด refreshToken ์ ์ ์ฉํ๋ ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ๋ณด์ด๋ ์ฌ๋ฌ ๊ฐ์ง ๋ฌธ์ ์ ๋ค์ ๊ธฐ๋กํ๊ณ ๊ฐ์ ํ๋ ๋ชจ๋ ๊ณผ์ ์ ์ ๋ฆฌํ๋ ๊ฒ ์ ๋๋ค. ๋ฐ๋ผ์ ๋ด์ฉ์ ํ๋ฆ์ด ๋ถ์์ฐ์ค๋ฌ์ธ ์ ์๋ค๋ ์ ์ .. wono | discuss | tweet + it dev nextjs mobile jwt how to handle autherization for mobile apps in next.js 14I want to create a next.js 14 app and use its api routes to connect a RN mobile app. But the thing is I am new to next.js and don't have much experience or understanding of cookies but I have worke... wono | discuss | tweetNext
+ it dev nextjs jotai zustand [React๐] ์ฐจ์ธ๋ ์ํ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ, Jotai VS Zustand โญ (Feat. Recoil)๋ค์ด๊ฐ๋ฉฐ ํ๋ก ํธ์๋ ๋ถ์ผ๋ ๋ณํ๊ฐ ์ ๋ง ๋น ๋ฅด๊ณ ์ด์์์ด ๋ฐ์ ํ๊ณ ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ํ๋ ๊ฒ๋ง ์ด์ฌํํ๋ฉด ์ด๋์ ๋ค์ณ์ง๊ณ ์๋ ์์ ์ ๋ฐ๊ฒฌํ ์ ์์ต๋๋คโฆ ๐ญ ๊ทธ ์ค์์๋ ๊ฐ์ฅ ์ฐ๋ฆฌ๋ฅผ ๊น๋ค๋กญ๊ฒ ๋ง๋๋ ๋ถ์ผ๊ฐ ์์ฃ , ๋ฐ๋ก ์ํ๊ด๋ฆฌ (state management) ์ ๋๋ค. ๋ฆฌ์กํธ์ Next JS ๋ฑ ํ๋ ์์ํฌ๋ค์ด ์ฌ๋ฌ ๋ฌธ์ ์ํฉ๋ค์ ํด๊ฒฐํด์ฃผ์๋ค๊ณ ํ์ง๋ง ์ํ๊ด๋ฆฌ์ ๋ํด์๋ ์ฌ์ ํ ์๋ฌธ์ ๋๋ค. ์ฝ๋๊ฐ ๊ธธ์ด์ง๊ณ , ๋ฌด์ธ๊ฐ ๋ชจ๋ฅผ ๋ถํธํจ์ด ํญ์ ์กด์ฌํด์์ฃ . Redux ๋ Mobx, ๊ฑฐ๊ธฐ์ ๋ ๋์๊ฐ์๋ Redux ์ฌ์ฉ์ ๊ฐ์ํ์ํจ Redux toolkit ๋ํ ๋ฑ์ฅํ์ง๋ง ์์ง๋ ์ด ๋ถ๋ถ์ ๋ฐ์ ํ ๊ธธ์ด ๋ง์ด ๋จ์๋ค๊ณ ์๊ฐ๋ฉ๋๋ค. ๊ทธ ์ค์ ์ต๊ทผ๋ค์ด ์ ์ ์ฃผ๋ชฉ๋ฐ๊ณ ์๋ 2๊ฐ์ง ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์๊ฐํ๊ณ ์ ํฉ๋๋ค! ๋ฐ๋ก Jotai.. wono | discuss | tweet
+ it dev nextjs jotai store Using Jotai only as an external provider-less store compared to Zustand ยท pmndrs/jotai ยท Discussion #2444Using Jotai only as an external provider-less store compared to Zustand wono | discuss | tweet
+ it dev nextjs jotai issue Next 14: Specified module format (CommonJs) is not matching the module format of the source code (EcmaScript Modules) ยท pmndrs/jotai ยท Discussion #2579Next 14: Specified module format (CommonJs) is not matching the module format of the source code (EcmaScript Modules) wono | discuss | tweet
+ it dev nextjs jotai example next.js/examples/with-jotai at canary ยท vercel/next.jsThe React Framework. Contribute to vercel/next.js development by creating an account on GitHub. wono | discuss | tweet
+ it dev nextjs server-only cache context Sharing User Data Between Server Components of Different Pages in Next.js 14 ยท vercel/next.js ยท Discussion #67330Sharing User Data Between Server Components of Different Pages in Next.js 14 wono | discuss | tweet
+ it dev nextjs context cache NextJS ์ดํด ํด๋ณด๊ธฐ_5 - Server Component์ Client Component์ ๊ตฌ์ฑ ํจํดNextJS App Route์์ Server Component์ Client Component ๋น๊ต wono | discuss | tweet
+ it dev nextjs context Next.js 14 ๊ฐ์ข 12ํธ. ์๋ฒ ์ปดํฌ๋ํธ ํจํด - ์๋ฒ ์ ์ฉ ์ฝ๋(server-only), ์จ๋ ํํฐ ํจํค์ง, ์ปจํ ์คํธ ํ๋ก๋ฐ์ด๋(Context Provider) ํ์ฉํ๊ธฐ์๋ฒ ์ปดํฌ๋ํธ ํจํด - ์๋ฒ ์ ์ฉ ์ฝ๋, ์จ๋ ํํฐ ํจํค์ง, ์ปจํ ์คํธ ํ๋ก๋ฐ์ด๋ ํ์ฉํ๊ธฐ wono | discuss | tweet
+ it dev nextjs context Next.js - ์๋ฒ ์ปดํฌ๋ํธ์์ useContext() ์ฌ์ฉํ๊ธฐ๋ฅ์คํธjs๋ ์๋ฒ์ปดํฌ๋ํธ์ ํด๋ผ์ด์ธํธ ์ปดํฌ๋ํธ๋ก ๋๋์ด์ง๋ค ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ React ๊ธฐ๋ฐ์ ํ ๋ค์ ์ฌ์ฉํ ๋๋ ํ๋ฒ๋ ์๊ฐํด๋ณด์์ผ ํ๋ค ์ค๋์ useContext() ๋ฅผ ์ด๋ป๊ฒ ์ฌ์ฉํ๋ ์ง ์์๋ณผ ๊ฒ์ด๋ค Next.js - ์๋ฒ ์ปดํฌ๋ํธ์์ useContext() ์ฌ์ฉํ๊ธฐ ๋ฆฌ์กํธ์์ ์ ์ญ ๋ณ์๋ฅผ ์ ๋ฌํ๊ธฐ ์ํด redux / useContext ๋ฅผ ์ฌ์ฉํ์๋ค Next.js์์ useContext ๋ฅผ ์ฌ์ฉํ๋ ค๊ณ ํ๋ ํ๊ฐ์ง ์ ์ฝ์ด ์์๋ค You are using createContext in a Server Component but it only works in Client Components โ ๋ฐ๋ก ํด๋ผ์ด์ธํธ ์ปดํฌ๋ํธ์์๋ง ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ด๋ค createContext in a Server Compo.. wono | discuss | tweet
+ it lang naming Tips on naming boolean variables - Cleaner CodeOriginally posted at michaelzanggl.com. Subscribe to my newsletter to never miss out on new... Tagged with codequality, refactorit. wono | discuss | tweet
+ it dev nextjs jwt jose [Next.js@13] jwt ๋ผ์ด๋ธ๋ฌ๋ฆฌ, jsonwebtoken ๋์ jose[Next.js@13] jsonwebtoken ๋์ jose Next.js์์ jwt๋ฅผ ์์ฑํ ๋ ๋ ์ฐ๋ jsonwebtoken ๋ชจ๋์ ์๋ํ๋ค. ๊ฒฐ๊ณผ๋ ์ค๋ฅ! ๊ณต์ ๋ฌธ์์ ๋ฐ๋ฅด๋ฉด Edge ๋ฐํ์์ ๋ชจ๋ Node.js API๋ฅผ ์ง์ํ์ง ์๋๋ค๊ณ ์๋ ค์ค๋ค. error - Error: The edge runtime does not support Node.js 'buffer' module. jose ๊ทธ๋์ ๋์ฒด ๋ชจ๋์ ์ฐพ๋ค๊ฐ jose ๋ผ๋ ๋ชจ๋์ ์ฐพ์๋ค. ํด๋น ๋ชจ๋์ ์ข ์์ฑ์์ด ์๋ํ๋ค. ๋ด๋ถ์ ๊ฐ ๋ชจ๋๋ค์ ๋ ๋ฆฝ์ ์ด๊ธฐ์ ํธ๋ฆฌ์์ดํน๋ ๊ฐ๋ฅํ๋ค๊ณ ํ๋ค. ์ง์ ๋ชฉ๋ก์ ๋ณด๋ฉด ๋งจ ์๋์ ๋น๋นํ๊ฒ Vercel์ด ์๋ค. ํ์ฌ jwt ์์ฑ๊ณผ ๋ณตํธํ๋ฅผ jose๋ฅผ ํตํด ๋ชจ๋ํ์์ผ์ ์ฌ์ฉํ๊ณ ์๋ค. import { JWTPaylo.. wono | discuss | tweet
+ it dev nextjs build eslint eslint ์ ์ฉ์ ์ด์(rules ๋ฌด์, ์ฐ์ ์์)๐ ์ด๋ฒ์๊ฐ์๋ eslint์ ์ฉ์ ๋ง๋ ์ ์๋ ์ด์์ ํด๊ฒฐ๋ฐฉ๋ฒ์ ์์๋ณด์๋ค! 1. ์ผ๋ถ rules ๋ฌด์ํ๋ ๋ฒ ํน์ ์ฝ๋์์ eslint์ rules์ ๋ฌด์ํด์ผํ ๋๊ฐ ์๋ค. ์ด๋ ์ฐ๋ฆฌ๋ ํ์ผ ์์ฒด๋ฅผ ๋ฌด์ํ๊ฑฐ๋, ๋ค์ ๋ผ์ธ, ํน์ ๋ฒ์์ ์ฝ๋๋ฅผ ๋ฌด์ํ ์ ์๋ค. ๋ง์ฝ index.js์ testํจ์์์ no-unused-vars๋ฅผ ๋ฌด์ํ๊ณ ์ถ๋ค๋ฉด ์ด๋ป๊ฒ ํด์ผํ ๊น? (1) ํน์ ํ์ผ ๋ฌด์ ๋ง์ฝ ํ์ผ ์ฐจ์์์ ๋ฌด์ํ๋ ค๋ฉด .eslintignore์ ํ์ผ๋ช ์ ์ถ๊ฐํ๋ฉด ๋๋ค. ํ์ง๋ง ์ด ๊ฒฝ์ฐ, index.js์ ๋ํด ์ ์ฒด eslint๋ฅผ ์ ์ฉํ์ง ์๋ ๋จ์ ์ด ์๋ค. // .**eslintignore** index.js (2) ๋ค์ ๋ผ์ธ๋ง ๋ฌด์ ๋ ๋ฒ์งธ ๋ฐฉ๋ฒ์ผ๋ก ์ฃผ์์ ์ด์ฉํ ์ ์๋ค. ๋ง์ฝ ๋ค์ ๋ผ์ธ๋ง ๋ฌด์ํ๊ณ ์ถ.. wono | discuss | tweet
+ it dev nextjs build eslint How to disable typescript for failing my builds with nextjs?Getting a bunch of type errors upon running yarn next build, for example: Type error: Property 'href' does not exist on type '{ name: string; }'. Which causes my build to fail. Is there a command i... wono | discuss | tweet
+ it dev nextjs build eslint [Next.js 14] ํ๋ก์ ํธ ๋น๋ ์ ๋ฐ์ํ๋ no-console ์๋ฌ ํด๊ฒฐ [ES-Lint]console.log์ผ๋ฐ์ ์ผ๋ก JavaScript ํ๋ก๊ทธ๋๋ฐ ์ ๋๋ฒ๊น ๋ชฉ์ ์ผ๋ก ๋ธ๋ผ์ฐ์ ์ console.log ๋ฉ์๋๋ฅผ ์์ฃผ ์ฌ์ฉํ ๊ฒ์ด๋ค.๋ฌผ๋ก ์ฝ์ ๋ก๊ทธ๋ ๊ฐํธํ ๋๋ฒ๊น ๋๊ตฌ์ด๊ธด ํ์ง๋ง,๋ณด์ ์ด์๊ฐ ๋ฐ์ํ ์ฐ๋ ค๊ฐ ์๊ธฐ์ ์ค์ ๋ก ๋ฐฐํฌ๋๋ ์น ์ดํ๋ฆฌ์ผ์ด์ ์๋ ํฌํจ๋์ง ์๋ ๊ฒ์ด ์ข๋ค.ย ESLintESLint๋ ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋์์ ์๋ฌ๊ฐ ์๋ ๋ถ๋ถ์ ํ์๋ฅผ ํด์ฃผ๋ ์ ์ ์ฝ๋ ๋ถ์ ๋๊ตฌ์ด๋ค.์ผ๋ฐ์ ์ผ๋ก Typescript, Prettier๊ณผ ํจ๊ป ์น ํ๋ก๊ทธ๋๋ฐ์ ํ ๋ ํจ๊ป ์ค์น๋๋ฉฐ, ์ฝ๋์ ํ๋ฆฌํฐ๋ฅผ ๋ณด์ฅํด์ค๋ค.ESLint๋ ํ๋์ ๊ท์น์ผ๋ก no-console ๋ฃฐ์ ๊ฐ์ง๊ณ ์๋๋ฐ,๋น๋(npm run build) ์ ์ฝ์ ๋ก๊ทธ๊ฐ ํฌํจ๋์ด ์์ ๊ฒฝ์ฐ ๊ท์น ์๋ฐ์ผ๋ก ์ฒ๋ฆฌํ์ฌ ๋น๋๊ฐ ์ ์์ ์ผ๋ก ์๋ฃ๋์ง ์๋๋ค.ย n.. wono | discuss | tweet
+ it dev nextjs jose [Next.js@13] jwt ๋ผ์ด๋ธ๋ฌ๋ฆฌ, jsonwebtoken ๋์ jose[Next.js@13] jsonwebtoken ๋์ jose Next.js์์ jwt๋ฅผ ์์ฑํ ๋ ๋ ์ฐ๋ jsonwebtoken ๋ชจ๋์ ์๋ํ๋ค. ๊ฒฐ๊ณผ๋ ์ค๋ฅ! ๊ณต์ ๋ฌธ์์ ๋ฐ๋ฅด๋ฉด Edge ๋ฐํ์์ ๋ชจ๋ Node.js API๋ฅผ ์ง์ํ์ง ์๋๋ค๊ณ ์๋ ค์ค๋ค. error - Error: The edge runtime does not support Node.js 'buffer' module. jose ๊ทธ๋์ ๋์ฒด ๋ชจ๋์ ์ฐพ๋ค๊ฐ jose ๋ผ๋ ๋ชจ๋์ ์ฐพ์๋ค. ํด๋น ๋ชจ๋์ ์ข ์์ฑ์์ด ์๋ํ๋ค. ๋ด๋ถ์ ๊ฐ ๋ชจ๋๋ค์ ๋ ๋ฆฝ์ ์ด๊ธฐ์ ํธ๋ฆฌ์์ดํน๋ ๊ฐ๋ฅํ๋ค๊ณ ํ๋ค. ์ง์ ๋ชฉ๋ก์ ๋ณด๋ฉด ๋งจ ์๋์ ๋น๋นํ๊ฒ Vercel์ด ์๋ค. ํ์ฌ jwt ์์ฑ๊ณผ ๋ณตํธํ๋ฅผ jose๋ฅผ ํตํด ๋ชจ๋ํ์์ผ์ ์ฌ์ฉํ๊ณ ์๋ค. import { JWTPaylo.. wono | discuss | tweet
+ it dev nextjs jose jsonwebtoken NEXTjs (jose)next.js์์ jsonwebtoken ์๋ฌ๋ฏธ๋ค์จ์ด๋ ๋ ธ๋์ ๋ฐํ์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๊ณ ์์ผ๋ Edge ๋ฐํ์์ ๋ ธ๋ ํญ๋ชฉ์ ์ง์ํ์ง ์๋๋ค.jsonwebtoken jwt.verify(token, ); jose await jwtVerify(token, new Text wono | discuss | tweet
+ it dev nextjs jwt refresh [Next.JS] ์ฌ์ฉ์ ์ธ์ฆ ๋ฐ 401์ ์ํ middleware ์ค์ [Next.JS] ์ฌ์ฉ์ ์ธ์ฆ ๋ฐ 401์ ์ํ middleware ์ค์ wono | discuss | tweet
+ it dev nextjs jwt Next.js 14 App Router๋ก JWT ๊ธฐ๋ฐ ์ธ์ ์ธ์ฆ ๊ตฌํํ๊ธฐ์ด ํํ ๋ฆฌ์ผ์์๋ Next.js 14์ App Router๋ฅผ ์ฌ์ฉํด ์จ๋ํํฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์ด JWT ๊ธฐ๋ฐ์ ์ธ์ ์ธ์ฆ์ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ๋ค๋ฃน๋๋ค. wono | discuss | tweet
+ it dev nextjs nextauth ๋๋ฆฌํํธ์ myCodings๋๋ฆฌํํธ์ myCodings.fly.dev! wono | discuss | tweet
+ it dev nextjs jwt refresh [๋๋ง์ ๋ช ์ธ์ง ํ๋ก์ ํธ] NextJS(^14.1) ์์ ์ ์ฉํ accessToken ์ ์ด์ฉํ ํ ํฐ ์ธ์ฆ์์ refresh + access ๋ฐฉ์์ผ๋ก ์์ ์ค๋์ ๋ช ์ธ ์ด ํฌ์คํธ์ ๋ชฉ์ ๋๋ณด๊ธฐ ์ด๋ฒ์ ์ฝ 1๋ฌ์ ๊ธฐ๊ฐ๋์ ๋๋ง์ ๋ช ์ธ์ง ํ๋ก์ ํธ์ ๋ฆฌ์กํธ์ ๋ฉํ ํ๋ ์์ํฌ์ธ NextJS 14.1 ๋ฒ์ ์ ์ฌ์ฉํ์์ต๋๋ค. ์ด ํ๋ก์ ํธ์ ๋ก๊ทธ์ธ ์ธ์ฆ์ ๊ตฌํํ๊ธฐ ์ํด์ ๊ฐํธํ ์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ธ next-auth( โ ํ์ฌ๋ auth.js ๋ก ์๋จ์ฅ์ค)์ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉ ํ์ง ์๊ณ , ์ ํต์ ์ธ ๋ฐฉ์์ JWT ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉํด์ ์ธ์ฆ์ ๊ตฌํํ์์ต๋๋ค. ์ด ํฌ์คํธ์ ๋ชฉ์ ์ ๊ธฐ์กด ํ๋ก์ ํธ์ ์ ์ฉ๋ jwt ์ธ์ฆ ๋ฐฉ์(accessToken ๊ธฐ๋ฐ)์ ๋ณด์์ ๋ฌธ์ ์ ์ ์ธ์ํ๊ณ , ์ด๋ฅผ ๊ฐ์ ํ๊ธฐ ์ํด refreshToken ์ ์ ์ฉํ๋ ๋ฆฌํฉํ ๋ง ๊ณผ์ ์์ ๋ณด์ด๋ ์ฌ๋ฌ ๊ฐ์ง ๋ฌธ์ ์ ๋ค์ ๊ธฐ๋กํ๊ณ ๊ฐ์ ํ๋ ๋ชจ๋ ๊ณผ์ ์ ์ ๋ฆฌํ๋ ๊ฒ ์ ๋๋ค. ๋ฐ๋ผ์ ๋ด์ฉ์ ํ๋ฆ์ด ๋ถ์์ฐ์ค๋ฌ์ธ ์ ์๋ค๋ ์ ์ .. wono | discuss | tweet
+ it dev nextjs mobile jwt how to handle autherization for mobile apps in next.js 14I want to create a next.js 14 app and use its api routes to connect a RN mobile app. But the thing is I am new to next.js and don't have much experience or understanding of cookies but I have worke... wono | discuss | tweet