반복되는 connet
를 피하기 위해
// @/util/database.js
import { MongoClient } from 'mongodb';
const url = 'myURL';
const options = { useNewUrlParser: true };
let connectDB;
if (process.env.NODE_ENV === 'development') {
if (!global._mongo) {
global._mongo = new MongoClient(url, options).connect();
}
connectDB = global._mongo;
} else {
connectDB = new MongoClient(url, options).connect();
}
export { connectDB };
connectDB 함수
를 꺼내다 쓴다.// page.js
import { connectDB } from '@/util/database';
export default async function Home() {
const client = await connectDB;
const db = client.db('myDB');
let result = await db.collection('post').find().toArray();
return <div>Hello</div>;
}
이 때, Server Component
에서 import 하자.
Client Componet
에서 db connect 하는 것은 위험하다.