Tengo una clase que contiene pocas funciones, pongo una de ellas debajo,
const _ = require("lodash"); const ObjectId = require("mongoose").Types.ObjectId; const mockLookUps = require(“../../data”).mockLookUps; class XYZ { // ...... Other functions async getData() { return Promise.resolve(mockLookUps); // JSON Object } } module.exports = XYZ;
si importo eso en otra clase como a continuación,
const x = await XYZ.getData();
me esta tirando algo no es un error de funcion asi,
XYZ.getData is not a function
¿Cuál es el error que estoy cometiendo?
const xyz = new XYZ() const data = await xyz.getData()
Podría funcionar
1. Primero debe crear una instancia de clase para llamar a los métodos de instancia.
prueba esto:
const xyz = new XYZ(); const result = await xyz.getData();
2. Para su caso, intente hacerlo estático:
class XYZ { // ...... Other functions static async getData() { return Promise.resolve(mockLookUps); // JSON Object } } module.exports = XYZ;
y luego puedes usar así:
const x = await XYZ.getData();