actjs / laravel 'npm run development' завершается ошибкой с синтаксической ошибкой 'Неожиданный токен' - PullRequest
1 голос
/ 27 сентября 2019

Я обновил babel до последней версии и все еще получаю ошибку, указывающую на оператор "="

  35 | export const AssignmentsContainer = connectedContainer(
  36 |     class extends Component {
> 37 |         buildAssignments = () => {
     |                          ^

debug.log действительно не предлагает никаких очевидных подсказок

Пакет.json на данный момент выглядит следующим образом:

{
"private": true,
"scripts": {
    "dev": "npm run development",
    "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch": "npm run development -- --watch",
    "watch-poll": "npm run watch -- --watch-poll",
    "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
    "prod": "npm run production",
    "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
},
"devDependencies": {
    "axios": "^0.18.1",
    "babel-preset-env": "^1.7.0",
    "babel-preset-react": "^6.24.1",
    "bootstrap": "^4.3.1",
    "cross-env": "^5.1",
    "jquery": "^3.4.1",
    "laravel-mix": "^2.0",
    "lodash": "^4.17.15",
    "popper.js": "^1.12",
    "react": "^16.9.0",
    "react-dom": "^16.2.0"
},
"dependencies": {
    "core-js": "^3.2.1",
    "react-bootstrap": "^1.0.0-beta.12",
    "react-html-parser": "^2.0.2",
    "react-redux": "^7.1.1",
    "redux": "^4.0.4"
}

}

Также пытался просеять это, но продолжайте появляться пустым: https://github.com/JeffreyWay/laravel-mix/issues/1402

1 Ответ

2 голосов
/ 27 сентября 2019

Свойства класса по-прежнему не поддерживаются.Итак, вам нужно использовать @babel/plugin-proposal-class-properties, который поможет преобразовать свойства класса.

Вам необходимо установить плагин babel:

npm install --save-dev @babel/plugin-proposal-class-properties

И в вашем файле .babelrc вынеобходимо сделать запись:

"plugins": ["@babel/plugin-proposal-class-properties"]

Это решит вашу проблему.

В ссылке, которой вы поделились, было упомянуто использование "babel-plugin-transform-class-properties", но это для более старой версии Babel.Начиная с Babel v7 имя было изменено на "@babel/plugin-proposal-class-properties"

Для версий Babel, предшествующих 7:

Установите babel-plugin-transformПлагин -class-properties:

npm install --save-dev babel-plugin-transform-class-properties

Затем введите запись в .babelrc:

"plugins": ["transform-class-properties"]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...