В этой статье кратко представлены два способа включения синтаксиса декоратора в приложении create-реагировать.
Способ 1: разоблачитьcreate-react-appКонфигурация
незащищенныйcreate-react-appвсе конфигурации
Запустите команду:
$ npm run eject
В проекте отображаются различные конфигурационные файлы.
существуетbabelдобавлено вpluginsнастроить
существуетpackage.jsonнашел в файлеbabelконфигурации добавьте следующий код:
package.json
"babel": {
"presets": [
"react-app"
],
+ "plugins": [
+ [
+ "@babel/plugin-proposal-decorators",
+ { "legacy": true }
+ ]
+ ]
}
Перезапустите проект, и синтаксис декоратора будет работать как обычно.
Шаблон create-реагировать-приложение уже установлен
@babel/plugin-proposal-decoratorsПлагин, если это скаффолд, настроенный вами, сначала установите плагин:npm install @babel/plugin-proposal-decorators --save-dev
Способ 2: непосредственно в проектеnode-modulesдобавить конфигурацию
открытый проектnode_modulesпапка, найтиbabel-preset-react-appсодержание. открыть каталогcreate.jsдокумент. оказатьсяpluginsКонфигурация локального свойства, конфигурация может быть изменена следующим образом:
-isTypeScriptEnabled && [
- require('@babel/plugin-proposal-decorators').default,
- false,
-],
+[
+ require('@babel/plugin-proposal-decorators').default,
+ { legacy: true },
+],
Не рекомендуется использовать второй способ, т.к. один раз его нужно переустанавливать
node_modules, вам нужно идти сноваbabel-preset-react-appДобавьте конфигурацию внутри.
Суммировать
После использования двух вышеуказанных методов синтаксис декоратора можно использовать в проекте в обычном режиме, но при использовании декораторов. Может все еще быть сообщение об ошибке красной строки.В это время в файле конфигурации VSCode (кнопка «Настройки» в левом нижнем углу кода Visual Studio (или «Файл»> «Настройки»> «Настройки») добавьте следующую конфигурацию:
setting.json
"javascript.implicitProjectConfig.experimentalDecorators": true,
Рекомендуется использовать первый метод, хотя он может быть громоздким и требует раскрытия всей конфигурации. А вот второй способ, это нормально, если вы сами проведете небольшие демо-тесты. В противном случае, когда вам нужно переустановить
node_modules, вам нужно идти сноваbabel-preset-react-appДобавьте конфигурацию внутри.