Ошибка в свойстве класса
Есть два компьютера: на винде и на дебиане, на обоих стоит 15 нода. Так же имеется класс:
class User {
front_id;
email;
username;
password;
registration_date = null;
role;
sessions = [];
is_confirmed;
is_blocked;
constructor() {
}
}
module.exports = User;
На винде всё запускается и работает, на линуксе выскакивает ошибка SyntaxError: Unexpected token ; и указывает именно на front_id;
package.json:
{
"name": "test",
"version": "0.0.1",
"scripts": {
"start:prod": "node src/index.js",
"start:dev": "node --trace-deprecation --inspect src/index.js"
},
"dependencies": {
"argon2": "^0.26.2",
"body-parser": "^1.19.0",
"cors": "^2.8.5",
"express": "^4.17.1",
"fs": "0.0.1-security",
"ip": "^1.1.5",
"mongoose": "^5.9.14",
"path": "^0.12.7",
"uuid": "^8.1.0"
}
}
Есть какие-нибудь способы фикса, кроме, как перенести свойства в конструктор или использование бабеля?
Ответы (2 шт):
Автор решения: Aziz Umarov
→ Ссылка
Попробуйте
class User {
constructor() {
this.front_id;
this.email;
this.username;
this.password;
this.registration_date = null;
this.role;
this.sessions = [];
this.is_confirmed;
this.is_blocked;
}
}
module.exports = User;
и где нить
const User = require('./user');
const user = new User();
console.log(user);
Автор решения: Qwertiy
→ Ссылка
Просто обнови nodejs хотя бы до 12й версии.
https://node.green/#ESNEXT-candidate--stage-3--instance-class-fields-public-instance-class-fields
