Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

126
Views
Tener un problema de flujo de control con el hallazgo del modelo mangosta


Soy completamente nuevo en el nodo y sus marcos Koa y express. Tengo un modelo de mangosta llamado Dibujo y un módulo de enrutador para eso.

El problema es que con los enrutadores express pude obtener los datos de la base de datos usando el método Drawing.find pero con Koa, el control ni siquiera entra en Drawing.find. Y no soy capaz de obtener los datos en absoluto. Encuentre el siguiente código relacionado y ayúdeme a entender mejor las cosas.

Este es mi módulo de enrutador

 import * as Router from "koa-router"; import Drawing from "../../models/drawing"; function getRoutesForDrawing(): Router { console.log("Inside getRoutes for drawing"); let route = new Router(); route.get("/drawing", function(context,next) { console.log("Inside /drawing"); Drawing.find(function(err,drawings) { console.log("Not gettig executed"); context.body = "Welcome"; }); //context.body = "Welcome"; }); } export default getRoutesForDrawing();

Y el modelo es

 import mongoose = require("mongoose"); export interface IDrawing extends mongoose.Document { drawingId:Number, drawingName:String, updatedOn:Date, updatedBy:Number }; export const DrawingSchema = new mongoose.Schema({ drawingId:Number, drawingName:String, updatedOn:Date, updatedBy:Number }); const Drawing = mongoose.model<IDrawing>('Drawing', DrawingSchema); export default Drawing;

Como puede ver en el módulo de mi enrutador, el control en realidad viene para /drawing y está imprimiendo en la consola "Dentro de /drawing", pero luego el control no llega a Drawing.find. Me está costando entender esto.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Es un poco difícil averiguar qué está pasando porque parece que tienes problemas por todas partes. Permítanme señalar las cosas que se destacan:

  1. getRoutesForDrawing se declara para devolver un enrutador y no devuelve nada
  2. Las rutas de Koa no son como express. En particular, no se basan en la devolución de llamada. Toman funciones de generador (Koa 1.x) o funciones asíncronas (Koa 2.x). Parece que espera que desee una función de devolución de llamada que no funcionará. Asumiendo koa 2.x, su router.get('/drawing', async(context) => {...});
  3. Suponiendo que koa 2.x, debe esperar el resultado de los métodos de mangosta, por ejemplo, context.body = await Drawing.find({})
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!