Sé que se han hecho preguntas similares, pero parece que esto no funcionó.
Tengo dos guiones:
// taskList.js const task = require('task'); var taskList = { ... addTask: function (targetId, taskType) { ... let newTask = new task.Task(targetId, taskType); }, ... }; module.exports = taskList; // task.js class Task { constructor(targetId, taskType) { this.targetId = targetId; this.taskType = taskType; } ... } module.exports = Task;Se supone que la lista de tareas también se convierte en una clase. Pero eso no viene al caso. me sale este error:
TypeError: task.Task is not a constructor at Object.addTask (taskList:34:23) at createTaskList (main:187:18) at Object.module.exports.loop (main:136:5) at __mainLoop:1:52 at __mainLoop:2:3 at Object.exports.evalCode (<runtime>:15845:76) at Object.exports.run (<runtime>:46468:24)He intentado devolver la clase como un objeto, para escribir primero la tarea con letras mayúsculas, "nueva tarea()", "nueva tarea()", nueva tarea.Tarea() y así sucesivamente...
Que me estoy perdiendo aqui ?
Editar: se agregó la parte en la que intento llamar al constructor.
CreateTasklist está en otra secuencia de comandos que importa el objeto taskList (que luego también será una clase) y llama a su función addTask
Ok lo tengo. La solución es llamar a "nueva tarea()" en lugar de "nueva tarea.Tarea()".
Lo intenté, pero no me di cuenta de que estaba recibiendo otro error en ese momento (del archivo que llama a createTaskList().
¡Gracias Barma! No encontré una manera de marcar su respuesta como aceptada (¿tal vez tengo que ganarme eso primero?).