DEV Community

Cover image for Erro!!! Mongoose Deprecation Warning the strictQuery
André Peixoto
André Peixoto

Posted on

1

Erro!!! Mongoose Deprecation Warning the strictQuery

Calma lá, é simples de resolver!


1- Não precisa usar o next.config.js, acredite, é mais simples que isso

2- Não precisa instalar a biblioteca DotEnv


Por isso mesmo foi a solução que eu adotei… é nativa do NextJS e muito simples de aplicar.

Passo 1

Pra ter chegado nesse erro, você já criou o aquivo .env.local e provavelmente usou o parametro MONGODB-URI=”” como no exemplo abaixo.

// file .env.local
MONGODB_URI='mongodb+srv://admin:<PASSWORD>@cluster0.zcxjukj.mongodb.net/?retryWrites=true&w=majority'
Enter fullscreen mode Exit fullscreen mode

Mas aqui está o problema, o NextJS não transfere essa variável pro client, ela está somente no Server, por isso está passando como “undefined”.

Mas é simples de resolver… coloque NEXT_PUBLIC_ no nome da variável no .env.local, como no exemplo abaixo 👇

// file .env.local
NEXT_PUBLIC_MONGODB_URI='mongodb+srv://admin:<PASSWORD>@cluster0.zcxjukj.mongodb.net/?retryWrites=true&w=majority'
Enter fullscreen mode Exit fullscreen mode

Pronto, agora você pode chamar a variável pelo process.env.

Basta acrescentar antes da chamada esse código mongoose.set(“strictQuery”, true);

Coloquei abaixo um trecho do código.

mongoose.set("strictQuery", true);

const connectMongo = async () => {
 try {
  const { connection } = await mongoose.connect(process.env.NEXT_PUBLIC_MONGODB_URI, {
   useNewUrlParser: true,
   useUnifiedTopology: true,
  });

<seu código aqui>

};
Enter fullscreen mode Exit fullscreen mode

Lembre-se de reiniciar o servidor pra variável NEXT_INPUT ser definida e você poder consumir no seu código.

SurveyJS custom survey software

Build Your Own Forms without Manual Coding

SurveyJS UI libraries let you build a JSON-based form management system that integrates with any backend, giving you full control over your data with no user limits. Includes support for custom question types, skip logic, an integrated CSS editor, PDF export, real-time analytics, and more.

Learn more

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs