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

138
Views
Lectura indefinida en cadena de promesa

Tengo una sencilla aplicación generadora de perfiles de empleados. Todo funciona como se esperaba hasta la promesa de generatePage(employeeData). La consola registra correctamente employeeData pero no se pasa a generatePage. ¿Alguien tiene idea de por qué? También he incluido una imagen del código inicial para generar-page.js y el mensaje de error de la consola "indefinido".

 const {writeFile, copyFile} = require('./utils/generate-site.js'); const generatePage = require('./src/page-template.js'); const mockData = [ { // lots of mock data objects here }, ] let employeeData = mockData; function init() { return inquirer.prompt(questions.startQuestions); } function getEmployeeData(answers) { if (answers.role === 'Engineer') { let engineer = new Engineer ( answers.name, answers.id, answers.email, answers.role ) return getEngineerData(engineer); } else if (answers.role === 'Intern') { let intern = new Intern ( answers.name, answers.id, answers.email, answers.role ) return getInternData(intern) } else if (answers.role === 'Manager') { let manager = new Manager ( answers.name, answers.id, answers.email, answers.role ) return getManagerData(manager) } } function getEngineerData(engineer) { return new Promise((resolve) => { resolve ( inquirer.prompt(questions.engineerQuestions) .then ((response) => { engineer = {...engineer, ...response}; // console.log(engineer) employeeData.push(engineer) } ) ) }) } function getInternData(intern) { return new Promise((resolve) => { // same as getEngineerData function }) } function getManagerData(manager) { return new Promise((resolve) => { // same as getEngineerData function }) } function confirm() { return inquirer.prompt(questions.confirmQuestion) } function buildTeam() { init() .then(answers => getEmployeeData(answers)) .then(confirm) .then(response => response.confirmAdd ? buildTeam() : console.log(employeeData)) .then(employeeData => generatePage(employeeData)) .then(pageHTML => { return writeFile(pageHTML) }) .then (writeFileResponse => { console.log(writeFileResponse); return copyFile() }) .then(copyFileResponse => { console.log(copyFileResponse); }) .catch (err => { console.log(err); }); } buildTeam();

lectura de consola indefinida en page-template.js

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

console.log devuelve "indefinido", por lo que la solución fue devolver la matriz employeeData en la cadena de promesa para transmitir.

 .then(response => { if (response.confirmAdd) { buildTeam() return employeeData } else { return employeeData } })
about 4 years ago · Juan Pablo Isaza 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!