El siguiente es un fragmento de Node.js. No se instaló Babel, ni mi empleador lo hará en caso de que fuera una sugerencia :)
Simplifiqué una clase para ver cuál podría ser el problema, pero estoy totalmente atascado. 2 archivos, 1 clase.
índice.js
const SESSION = 'bla bla'; const VARS = 'abc'; const Helper = require('./helper'); const helpertest = new Helper(SESSION, VARS); const x = Helper.setProduct(); console.log('End result :', x);ayudante.js
module.exports = class Helper { constructor(SESSION, VARS) { this.SESSION = SESSION; this.VARS = VARS; console.log('Hi session', this.SESSION, this.VARS); // Hi session bla bla abc } static get SESSION() { return this.SESSION; } static setProduct() { console.log('Hi setProduct', SESSION); // Uncaught ReferenceError: SESSION is not defined } }El problema es pasar la SESIÓN a esta función.
static setProduct() { console.log('Hi setProduct', SESSION); // Uncaught ReferenceError: SESSION is not defined }Lo he intentado: this.SESSION, session, session() etc. etc.
No tengo idea de por qué aparece correctamente en el constructor y no en mi método donde realmente lo necesito.
Por favor dame algunos consejos. Gracias por adelantado.
Supongo que SESSION es un miembro de instancia y no se puede acceder desde un contexto static .
Podría intentar no usar static al definir get SESSION() y setProduct .
Su llamada se vería como helpertest.setProduct... en lugar de Helper.setProduct... .