๋ชฉ๋ก๐Ÿ’ป ๋ฐฑ์—”๋“œ (2)

rigood

MongooseError: The `uri` parameter to `openUri()` must be a string, got "undefined". Make sure the first parameter to `mongoose.connect()` or `mongoose.createConnection()` is a string.

mongoose.connecet ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•˜์—ฌ mongoDB์— ์—ฐ๊ฒฐํ•˜๋Š” ๊ณผ์ •์—์„œ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. connect ๋ฉ”์„œ๋“œ์˜ ์ฒซ๋ฒˆ์งธ ์ธ์ž๋Š” ๋ฐ˜๋“œ์‹œ string์ด์–ด์•ผ ํ•˜๋Š”๋ฐ ํ˜„์žฌ ๊ฐ’์€ undefined์—ฌ์„œ ๋ฐœ์ƒํ•œ ์—๋Ÿฌ๋กœ, process.env.DB_URL ๊ฐ’์„ ์ฝ์–ด์˜ค์ง€ ๋ชปํ•ด ๊ฐ’์ด undefined๊ฐ€ ๋œ ๊ฒƒ์ด๋‹ค. node.js์—์„œ process.env ํ™˜๊ฒฝ๋ณ€์ˆ˜ ๊ฐ’์„ ์ฝ์–ด์˜ค๋ ค๋ฉด dotenv๋ผ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์„ค์น˜ํ•ด์•ผ ํ•œ๋‹ค. npm i dotenv ์„ค์น˜ ํ›„ server.js์—์„œ dotenv๋ฅผ ์„ค์ •ํ•ด์ค€๋‹ค. ์ด๋ ‡๊ฒŒ ํ–ˆ๋Š”๋ฐ๋„ ๊ณ„์† ์˜ค๋ฅ˜๊ฐ€ ๋œฌ๋‹ค๋ฉด, .env ํŒŒ์ผ์ด ๋ฃจํŠธ ํด๋”์— ์œ„์น˜ํ•ด์žˆ๋Š”์ง€ ํ™•์ธํ•ด๋ณด์ž. .env ํŒŒ์ผ์ด src ํด๋” ์•ˆ์— ์žˆ์œผ๋ฉด ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰๋˜์ง€ ์•Š๋Š”๋‹ค.

[Firebase] onsnapshot, get ์ฐจ์ด / ํŠธ์œ— ์‚ญ์ œ ์‹ค์‹œ๊ฐ„ ๋ฐ˜์˜ํ•˜๊ธฐ

1. ๋ฌธ์ œ ์ƒํ™ฉ ํŠธ์œ— ์‚ญ์ œ ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ ํŒŒ์ด์–ด๋ฒ ์ด์Šค DB์—์„œ๋Š” ์‚ญ์ œ๋˜์—ˆ์œผ๋‚˜ ํ™”๋ฉด์— ๋ฐ”๋กœ ๋ฐ˜์˜๋˜์ง€ ์•Š์Œ ์ƒˆ๋กœ๊ณ ์นจํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ํŽ˜์ด์ง€์— ๊ฐ”๋‹ค๊ฐ€ ๋‹ค์‹œ ๋“ค์–ด์™€์•ผ ํ™”๋ฉด์— ๋ฐ˜์˜๋จ 2. ๋‹ค๋ฅธ ํ™”๋ฉด์—์„œ ํŠธ์œ—์„ ์‚ญ์ œํ•  ๋•Œ๋Š” ๋ฐ”๋กœ ๋ฐ˜์˜๋จ Profile ํŽ˜์ด์ง€์—์„œ ํŠธ์œ—์„ ์‚ญ์ œํ•  ๋•Œ๋Š” ํ™”๋ฉด์— ๋ฐ”๋กœ ๋ฐ˜์˜๋˜์ง€ ์•Š์•˜์ง€๋งŒ, Home ํŽ˜์ด์ง€์—์„œ๋Š” ์‚ญ์ œ๋œ ๋‚ด์—ญ์ด ํ™”๋ฉด์— ๋ฐ”๋กœ ๋ฐ˜์˜๋จ 3. ์ฝ”๋“œ ๋น„๊ต (Profile vs Home) ํ™”๋ฉด์— ๋ฐ”๋กœ ๋ฐ˜์˜๋˜์ง€ ์•Š์•˜๋˜ Profile ์ปดํฌ๋„ŒํŠธ์—์„œ๋Š” get ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ–ˆ๊ณ , ํ™”๋ฉด์— ์ฆ‰๊ฐ ๋ฐ˜์˜๋˜์—ˆ๋˜ Home ์ปดํฌ๋„ŒํŠธ์—์„œ๋Š” onSnapshot ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ–ˆ์Œ Home์—์„œ๋Š” ํŠธ์œ— ์‚ญ์ œ ์‹œ ๋ฆฌ๋ Œ๋”๋ง์ด ์ผ์–ด๋‚ฌ๊ณ , Profile์—์„œ๋Š” ๋ฆฌ๋ Œ๋”๋ง ๋˜์ง€ ์•Š์Œ (console.log๋กœ ํ™•์ธ) // Profile.jsx..