Мне нужно использовать babel-plugin-transform-decorators-legacy с React-Native для включения @decorators. Как настроить React-Native / Babel, чтобы сделать это возможным?

Это связано с моим предыдущим вопросом о том, как заставить @decorators работать в React-Native: https://stackoverflow.com/a/34271636 / 941058

5
kingdango 16 Дек 2015 в 03:01

4 ответа

Лучший ответ

Используйте официальные пресеты Babel

Установите официальные предустановки Babel для приложений React Native:

npm i babel-preset-react-native --save-dev

Отредактируйте ваш .babelrc:

{
  "presets": ["react-native"]
}

До RN v21.0: Расширение оригинального .babelrc от реактивного

Чтобы избежать манипулирования файлами в каталоге node_modules, вы должны расширить оригинал {{ X1 } } .

Поддерживая чистоту ваших зависимостей, не будет никаких проблем с обновлениями или совместным использованием проекта.

{
    "extends": "react-native/packager/react-packager/.babelrc",
}
5
purii 22 Мар 2016 в 18:35

По состоянию на январь 2016 года вы можете просто создать файл .babelrc рядом с index.ios.js и index.android.js, который выглядит следующим образом:

{
  "plugins": [
    "transform-decorators"
  ]
}
2
Alon Gubkin 29 Янв 2016 в 17:33

Вы должны установить плагин на корневом уровне своих проектов, а затем добавить плагин в .babelrc в node_modules / react-native / packager / реагировать-packager / .babelrc

Проблема с этим обходом использования @decorators заключается в том, что если вы работаете в команде для приложения, каждому разработчику потребуется внести изменения в .babelrc, поскольку node_modules не должны быть возвращены в исходный код.

3
rmevans9 16 Дек 2015 в 11:55

Вы должны добавить его в свой .babelrc в вашей собственной папке реагирования в папке node_modules.

Этот файл :act-native / packager / реагировать-packager / .babelrc.

Поместите его перед свойствами синтаксического класса.

Вы также, кажется, нуждаетесь в .babelrc на корневом уровне, как предложено ниже.

    {
      "plugins": [
        "transform-decorators"
      ]
    }
1
zolar 5 Фев 2016 в 18:23