我已经与CRNA创建了一个项目,经过一些考虑,我决定选择MobX进行状态管理。 MobX最适合装饰器语法(大多数MobX文档是使用装饰器语法编写的)所以我想安装Babel插件,以便使用装饰器。
我已成功安装MobX(yarn add mobx mobx-react
),但在安装Babel插件后启用装饰器(npm install --save-dev babel-plugin-transform-decorators
并将"transform-decorators"
添加到{{1}中的插件部分},.babelrc
停止工作,抛出有关未找到react-native-scripts的错误。
我然后运行yarn start
,这次它发出错误说
yarn install
有没有人有CRNA和MobX的经验?非常感谢任何帮助!
答案 0 :(得分:4)
我已经解决了。事实证明,运行npm install --save-dev babel-plugin-transform-decorators
会破坏某些东西。我应该运行的是yarn add --dev babel-plugin-transform-decorators-legacy
并将"transform-decorators-legacy"
添加到.babelrc
插件部分。完成这些步骤后,我运行yarn install
并修复了我的项目。
此外,我的编辑器(VSCode)提出了有关扩展实验的警告,因此我在根文件夹中添加了jsconfig.json
文件,并在内部添加了以下内容:
{
"compilerOptions": {
"experimentalDecorators": true
},
"exclude": [".expo/*", "node_modules/*"]
}