โ๏ธfirebase store์์๋ ๋ถ๋ถ ํ
์คํธ ๊ฒ์์ ์ง์ํ์ง ์๋๋ค. ex) ๊ท์ฌ์ด ํธ๋๋ผ๋ ์ ์ ๋ฅผ ๊ฒ์ํ๊ธฐ ์ํด์, ํธ๋๋ผ๊ณ ๊ฒ์ํ๋ฉด ์ฟผ๋ฆฌ๊ฐ ๋ถ๊ฐ๋ฅํ๋ค. ์ ๋์ด๊ฐ ์ผ์นํ๋๋ก ์
๋ ฅํด์ผ ์ฐพ๊ณ ์ํ๋ ์ ์ ๋ฅผ ๊ฒ์ํ ์ ์๋ค ์ด์ ๊ฐ์ ์ํฉ์ด๋ผ๋ฉด, ๊ฒ์๊ธฐ๋ฅ์ ํฐ ์๋ฏธ๊ฐ ์๋๊ฒ ๊ฐ์ ๋ถ๋ถ ๋ฌธ์์ด๋ก ๊ฒ์์ด ๊ฐ๋ฅํ๋๋ก ํด๊ฒฐํด๋ณด๊ณ ์ ํ๋ค. export const cleaningText = (text: string): string => { // ํน์๋ฌธ์ ๋ฐ ๊ณต๋ฐฑ ์ ๊ฑฐ, ๋ค์ํ ์ธ์ด ์ง์ const regEx = /[`~!@#$%^&*()_|+\-=?;:'",.\{\}\[\]\\\/ ]/gim; const cleanText = text.replace(regEx, "").toLowerCase(); return ..
Firebase
๋ก๊ทธ์ธ ์ํ ์ ์ง ๋ก๊ทธ์ธ ์ํ ์ ์ญ ๊ด๋ฆฌfirebase๋ ๋ก๊ทธ์ธ์ด๋ ํ์๊ฐ์
์ ํ๋ฉด, ์ด์ ๊ฐ์ด user์ ๋ณด๋ฅผ ๋ฆฌํดํด์ค๋ค.์ด ์ ์ ์ ๋ณด๋ฅผ ํตํด ๋ก๊ทธ์ธ ์ํ์, ํ๋กํ, ๋ณธ์ธ์ ๊ฒ์๊ธ/๋๊ธ ์ฌ๋ถ๊ฐ์ ์์
๋ค์ ํ ๊ฒ์ด๋ฏ๋ก ์ ์ญ(zustand)์ผ๋ก user์ ๋ณด๋ฅผ ๊ด๋ฆฌํ๋ค.์ฒ์์ ์๋ก๊ณ ์นจ์ด ๋ฐ์ํด๋ ์ ์ญ ์ํ ์ด๊ธฐํ๊ฐ ๋ฐ์ํ์ง ์๋๋ก, zustand์ persist ๋ฏธ๋ค์จ์ด๋ฅผ ์ฌ์ฉํ์ฌ localStorage์ ๋ด์ ์ด ๋ก๊ทธ์ธ ์ํ(์ ์ ์ ๋ณด ์กด์ฌ ์ฌ๋ถ)๋ฅผ ์ ์ง๊ฐ ๋๋๋ก ํด์ผ๊ฒ ๋ค๊ณ ์๊ฐํ๋ค.ํ์ง๋ง, ์ฐพ์๋ณด๋ firebase ์ธ์ฆ ์์คํ
์ด ์ฌ์ฉ์์ ๋ก๊ทธ์ธ ์ํ๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํด, ์ธ์ฆ ํ ํฐ์ ์ฌ์ฉํ๊ณ ์ด ์ธ์ฆํ ํฐ์ ์๊ฐ์ด ์ฝ 1์๊ฐ ์ ๋์ด๊ธฐ ๋๋ฌธ์, ์ด ํ ํฐ์ด ๋ง๋ฃ๋๊ฑฐ๋ ๊ฐฑ์ ์ ์คํจํ๋ฉด ๋ก์ปฌ์คํ ๋ฆฌ์ง์๋ ๋ก๊ทธ์ธ์ํ์ด์ง๋ง..