Пока я настраивал React в проекте Django, я столкнулся с этой ошибкой
Ошибка ModuleBuildError в сборке модуля (из ./node_modules/babel-loader/lib/index.js): SyntaxError: C: \ Users \ 1Sun \ Cebula3 \ cebula_react \ assets \ js \ index.js: Поддержка экспериментального синтаксиса classProperties 'в настоящее время не включен (17: 9):
15 |
16 | class BodyPartWrapper extends Component {
> 17 | state = {
| ^
18 |
19 | }
20 |
Add @babel/plugin-proposal-class-properties (https://git.io/vb4SL) to the
'plugins' section of your Babel config to enable transformation.
Итак, я установил @ babel / plugin-offer-class-properties и поместил это в babelrc
package.json
{
"name": "cebula_react",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "webpack-dev-server --config ./webpack.config.js --mode development",
"test": "echo \"Error: no test specified\" && exit 1",
"build": "webpack --config prod.config.js"
},
"keywords": [],
"author": "",
"license": "ISC",
"babel": {
"presets": [
"@babel/preset-env",
"@babel/preset-react"
]
},
"devDependencies": {
"@babel/cli": "^7.0.0",
"@babel/core": "^7.0.0",
"@babel/plugin-proposal-class-properties": "^7.0.0",
"@babel/preset-env": "^7.0.0",
"@babel/preset-react": "^7.0.0",
"babel-loader": "^8.0.2",
"babel-plugin-transform-class-properties": "^6.24.1",
"react-hot-loader": "^4.3.6",
"webpack": "^4.17.2",
"webpack-bundle-tracker": "^0.3.0",
"webpack-cli": "^3.1.0",
"webpack-dev-server": "^3.1.8"
},
"dependencies": {
"react": "^16.5.0",
"react-dom": "^16.5.0"
}
}
Babelrc
{
"presets": [
"@babel/preset-env",
"@babel/preset-react"
],
"plugins": [
"@babel/plugin-proposal-class-properties"
]
}
Однако ошибка все еще существует, в чем проблема ??
@babel/plugin-proposal-class-properties
иbabel-plugin-transform-class-properties
. Вы перестраиваете после установки, да?npx babel-upgrade --write --install
Ответы:
+ Изменить
Чтобы
Это сработало для меня
источник
.babelrc
чтобыbabel.config.js
и использоватьmodule.export
как stackoverflow.com/questions/53916434/... , как обсуждалось на GitHub github.com/babel/babel/issues/7879#issuecomment-419732313Test suite failed to run; .loose is not a valid Plugin property
Сначала установите: @ babel / plugin-offer-class-properties как dev dependencty:
Затем отредактируйте свой .babelrc, чтобы он выглядел примерно так:
.babelrc файл, расположенный в корневом каталоге, где находится package.json .
Обратите внимание, что вам следует перезапустить сервер разработки веб-пакетов, чтобы изменения вступили в силу.
источник
Решение для проекта webpack
Я просто решил эту проблему, добавив
@babel/plugin-proposal-class-properties
в конфигурацию webpack плагин. Раздел моих модулейwebpack.config.js
выглядит такисточник
замените файл .babelrc приведенным выше кодом. это устранило проблему для меня.
источник
npm install --save-dev @babel/preset-env @babel/preset-react @babel/plugin-proposal-class-properties
@babel/plugin-proposal-class-properties
зависимости.В моем корне рабочей среды файла .babelrc не было. Однако следующая запись в package.json решила проблему.
Примечание. Не забудьте выйти из консоли и снова открыть ее перед выполнением команд npm или yarn.
источник
После почти 3 часов поиска и потраченного времени на ту же ошибку я обнаружил, что использую импорт имени для React:
что совершенно неверно. Просто переключив его на:
все ошибки исчезли. Я надеюсь, что это поможет кому-то. Это мой .babelrc:
webpack.config.js
package.json
источник
Установите плагин-предложение-класс-свойства
npm install @babel/plugin-proposal-class-properties --save-dev
Обновите свой webpack.config.js, добавив
'plugins': ['@babel/plugin-proposal-class-properties']}]
источник
Invalid configuration object. Webpack has been initialised using a configuration object that does not match the API schema. - configuration.plugins[1] should be one of these: object { apply, … } | function -> Plugin of type object or instanceof Function Details: * configuration.plugins[1] should be an object. -> Plugin instance * configuration.plugins[1] should be an instance of function -> Function acting as plugin
Я обнаружил, что проблема моя
.babelrc
была проигнорирована, однако я создаюbabel.config.js
и добавляю следующее:И это работает для меня в приложении React Native, я думаю, что это также поможет приложениям React.
источник
module.exports = { "presets": ["module:metro-react-native-babel-preset"], "plugins": ["@babel/plugin-proposal-class-properties"] }
мне хватило. Можете ли вы обновить свой ответ, и мы также должны понять, почему.babelrc
был проигнорированЯ только что тестировал Laravel Framework 5.7.19, и следующие шаги работают:
Убедитесь, что ваш файл .babelrc находится в корневой папке вашего приложения, и добавьте следующий код:
Беги
npm install --save-dev @babel/plugin-proposal-class-properties
.Беги
npm run watch
.источник
Я использую синтаксический анализатор babel явно. Ни одно из вышеперечисленных решений не помогло мне. Это сработало.
источник
В соответствии с этой проблемой GitHub, если вы используете приложение create-response-app, вы должны скопировать свои
.babelrc
илиbabel.config.js
конфигурацииwebpack.config.js
и удалить их. Из-за того, что две строки кода,babelrc: false,configFile: false,
ваша конфигурация в babelrc, .. бесполезны. и вашwebpack.config.js
находится в вашей./node_madules/react-scripts/config
папке, я решил свою проблему так:источник
Перемещение
state
внутриconstructor function
сработало для меня:Удачи...
источник
Я использую пряжу. Чтобы преодолеть ошибку, мне пришлось сделать следующее.
источник
Добавление
в
.babelrc
работу для меня.источник
yarn add --dev @babel/plugin-proposal-class-properties
или
npm install @babel/plugin-proposal-class-properties --save-dev
.babelrcисточник
Если кто-то работает над monorepo после response -native-web-monorepo, вам нужно
config-overrides.js
подать файлpackages/web
. вам нужно добавитьresolveApp('../../node_modules/react-native-ratings'),
в этот файл ...Мой полный
config-override.js
файлисточник
Я столкнулся с той же проблемой при попытке перенести какой-то jsx с помощью babel. Ниже приведено решение, которое сработало для меня. Вы можете добавить следующий json в свой .babelrc
источник
Для проектов React с webpack:
.babelrc
(если нет) файл в корневой папке , гдеpackage.json
иwebpack.config.js
присутствуют и добавьте ниже кода , что:webpack.config.js
файл код ниже :npm start
снова запустите .источник
Я создал символическую ссылку для src / components -> ../../components, которая заставила
npm start
сходить с ума и перестать интерпретировать src / components / *. Js как jsx, что привело к той же ошибке. Все инструкции по исправлению из официального babel оказались бесполезными. Когда я скопировал обратно каталог компонентов, все было НАЗАД НА НОРМАЛЬНОЕ!источник