Node JS Неожиданный символ '#' - PullRequest
0 голосов
/ 25 апреля 2020

Node JS Неожиданный символ '#'

Класс:

export class Test{
    #parent = null;
    #name = null;

    constructor(name, parent) {
        this.#name = name;

        if (parent) {
            this.#parent = parent;
        }
    }
}

.babelr c:

{
  "presets": [
    "@babel/preset-env"
  ]
}

пакет. json:

"start": "babel-node"

Я запускаю скрипт "start" и получаю эту ошибку:

SyntaxError: Unexpected character '#' (9:4)

   7 | 
   8 | export class Test{
>  9 |     #parent = null;
     |     ^
  10 |     #name = null;

Версии:

-"@babel/core": "^7.8.7",
-"@babel/node": "^7.8.7",
-"@babel/preset-env": "^7.8.7",
-node: v12.16.2
-npm: 6.14.4

Как это исправить?

1 Ответ

1 голос
/ 25 апреля 2020

Доступ к частным полям из «stage-3» - https://github.com/tc39/proposal-class-fields

Вам необходимо добавить в .babelr c:

  "plugins": [
    "@babel/plugin-syntax-dynamic-import",
    "@babel/plugin-syntax-import-meta",
    "@babel/plugin-proposal-class-properties",
    "@babel/plugin-proposal-json-strings"
  ]
...