Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

405
Vistas
TypeORM y MongoDB y repositorios: no se puede leer la propiedad 'prototipo' de undefined

Estoy intentando implementar TypeORM con MongoDB usando repositorios. Sin embargo, cuando trato de hacer uso de repositorios para administrar la base de datos, usando la misma estructura que en este repositorio , las cosas van un poco mal. Recibo el siguiente error:

UnhandledPromiseRejectionWarning: TypeError: No se puede leer la propiedad 'prototipo' de undefined

He probado el siguiente código:

 import { Request, Response } from 'express'; import { getMongoRepository } from "typeorm"; import Task from "../models/Task"; export default class TasksController { async listAll(request: Request, response: Response): Promise<Response> { const tasksRepository = getMongoRepository(Task); try { const tasks = await tasksRepository.find(); return response.status(200).json({ "items": tasks }); } catch (err) { return response.status(400).json({ message: err.message, }); } } }

Sé que el error se refiere a la implementación del método .find() . Incluso logré obtener los datos, usando una sugerencia de esta publicación reemplazando:

 const tasks = await tasksRepository.find();

con

 const tasks = await tasksRepository.createCursor(tasksRepository.find()).toArray();

pero sigo recibiendo el error mencionado anteriormente.

¿Alguien entiende lo que está pasando?

También logré guardar datos directamente en la base de datos mediante el uso del siguiente script:

servidor.ts

 import express from 'express'; import { createConnection } from 'typeorm' const app = express(); const port = 3333; createConnection(); app.use(express.json()); app.post('/tasks', (async (request, response) => { const { item } = request.body; task.item = item; const task = new Task(); (await connection).mongoManager.save(task); return response.send(task); })) app.listen(port, () => console.log(`Server running on port ${port}`) );
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

TypeORM no es compatible con mongodb v4. https://github.com/nestjs/nest/issues/7798

Puede usar 3.7.0 en su lugar.

over 4 years ago · Santiago Trujillo Denunciar

0

Envié una solicitud de extracción para resolver esto. https://github.com/typeorm/typeorm/pull/8412 si alguien está buscando una solución mientras tanto.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda