捆绑失败:错误:插件 0 提供了“默认”的无效属性
Posted
技术标签:
【中文标题】捆绑失败:错误:插件 0 提供了“默认”的无效属性【英文标题】:bundling failed: Error: Plugin 0 provided an invalid property of "default" 【发布时间】:2018-12-29 23:53:15 【问题描述】:我正在尝试使用此命令在我的 AVD 上运行一个 react 本机应用程序:
react-native run-android
但出现以下错误:
bundling failed: Error: Plugin 0 specified in "C:\\Users\\ASUS\\test\\node_modules\\babel-preset-react-native\\index.js" provided an invalid property of "default" (While processing preset: "C:\\Users\\ASUS\\test\\node_modules\\babel-preset-react-native\\index.js")
at Plugin.init (C:\Users\ASUS\test\node_modules\babel-core\lib\transformation\plugin.js:131:13)
at Function.normalisePlugin (C:\Users\ASUS\test\node_modules\babel-core\lib\transformation\file\options\option-manager.js:152:12)
at C:\Users\ASUS\test\node_modules\babel-core\lib\transformation\file\options\option-manager.js:184:30
at Array.map (<anonymous>)
at Function.normalisePlugins (C:\Users\ASUS\test\node_modules\babel-core\lib\transformation\file\options\option-manager.js:158:20)
at OptionManager.mergeOptions (C:\Users\ASUS\test\node_modules\babel-core\lib\transformation\file\options\option-manager.js:234:36)
at C:\Users\ASUS\test\node_modules\babel-core\lib\transformation\file\options\option-manager.js:265:14
at C:\Users\ASUS\test\node_modules\babel-core\lib\transformation\file\options\option-manager.js:323:22
at Array.map (<anonymous>)
.babelrc:
"presets": [
"react-native"
"@babel/preset-flow"
]
package.json:
"name": "test",
"version": "0.0.1",
"private": true,
"scripts":
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
,
"dependencies":
"react": "16.4.1",
"react-native": "^0.55.4"
,
"devDependencies":
"babel-jest": "23.4.0",
"babel-preset-react-native": "5.0.2",
"jest": "23.4.1",
"react-test-renderer": "16.4.1"
,
"jest":
"preset": "react-native"
我使用的是 Windows,node.js v 8.11.3 & react native v 0.55.4
我已经尝试了互联网上推荐的所有内容(特别是 github),但仍然没有运气。如果有人可以提供帮助,我们将不胜感激。
【问题讨论】:
【参考方案1】:我遇到了这个问题,我需要降级babel-preset-react-native
版本。
如果你使用纱线
yarn remove babel-preset-react-native
yarn add babel-preset-react-native@4.0.0
或使用 npm 命令
npm uninstall babel-preset-react-native
npm install babel-preset-react-native@4.0.0
【讨论】:
【参考方案2】:好吧,可能已经晚了,但我会帮助其他人,因为 package.json 工作到 20.aug.2018 为止
package.json下面大部分依赖如 axios、Redux、Native base、react-native-router-flux ..etc 用于 react native 项目,所以我下面提到的版本相互兼容. 干杯。
"name": "Example",
"version": "0.0.1",
"private": true,
"scripts":
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
,
"resolutions":
"*/@babel/cli": "7.0.0-beta.54",
"*/@babel/core": "7.0.0-beta.54",
"*/@babel/code-frame": "7.0.0-beta.54"
,
"dependencies":
"axios": "^0.18.0",
"eslint": "^5.2.0",
"native-base": "2.6.1",
"prop-types": "^15.6.2",
"react": "16.3.1",
"react-native": "0.55.4",
"react-native-router-flux": "^4.0.1",
"react-native-timeline-listview": "^0.2.3",
"react-navigation": "^2.11.2",
"react-redux": "^5.0.7",
"redux": "^4.0.0",
"redux-logger": "^3.0.6",
"redux-thunk": "^2.3.0"
,
"devDependencies":
"babel-jest": "23.4.2",
"babel-preset-react-native": "4.0.0",
"jest": "23.5.0",
"react-test-renderer": "16.4.1"
,
"jest":
"preset": "react-native"
【讨论】:
【参考方案3】:它在 React native 中存在一些不兼容的版本控制问题。试试这个它会工作
1.更改package.json
中的以下版本在依赖项中:-
"react": "16.3.1"
"react-native": "0.55.4"
在 devDependencies 中:-
"babel-preset-react-native": "2.1.0"
2。删除 node_modules 并运行 npm install --save
-
然后通过 react-native run-android 运行应用程序
它会运行良好...
【讨论】:
【参考方案4】:应该使用jest到最新版本,它可以工作
"babel-jest": "23.3.0",
"babel-preset-react-native": "5.0.2",
"jest": "23.3.0",
【讨论】:
【参考方案5】:这是babel-preset-react-native
中的错误
设置版本:
yarn remove babel-preset-react-native
yarn add babel-preset-react-native@2.1.0
【讨论】:
好吧,我实际上将版本降级到了 4.0.0,但你帮我找到了问题 :) 谢谢以上是关于捆绑失败:错误:插件 0 提供了“默认”的无效属性的主要内容,如果未能解决你的问题,请参考以下文章