【问题标题】:How to enable ES2020 in react-native app?如何在 react-native 应用中启用 ES2020?
【发布时间】:2020-08-19 19:34:46
【问题描述】:

我试图在我的 react-native 应用程序中添加 ES2020 功能,我安装了 "babel-preset-es2020": "^1.0.2" 并添加了 .babelrc 文件,如下所示:

{
  "presets": ["es2020"]
}

但似乎没有任何效果,这个错误即将出现:

error: Error: Unable to resolve module `./animations/TimingAnimation` from `node_modules\react-native-reanimated\src\Animated.js`:

None of these files exist:
  * node_modules\react-native-reanimated\src\animations\TimingAnimation(.native|.android.js|.native.js|.js|.android.json|.native.json|.json|.android.ts|.native.ts|.ts|.android.tsx|.native.tsx|.tsx)
  * node_modules\react-native-reanimated\src\animations\TimingAnimation\index(.native|.android.js|.native.js|.js|.android.json|.native.json|.json|.android.ts|.native.ts|.ts|.android.tsx|.native.tsx|.tsx)
    at ModuleResolver.resolveDependency (C:\Users\smond\dev\sg_app\node_modules\metro\src\node-haste\DependencyGraph\ModuleResolution.js:163:15)
    at ResolutionRequest.resolveDependency (C:\Users\smond\dev\sg_app\node_modules\metro\src\node-haste\DependencyGraph\ResolutionRequest.js:52:18)
    at DependencyGraph.resolveDependency (C:\Users\smond\dev\sg_app\node_modules\metro\src\node-haste\DependencyGraph.js:287:16)
    at Object.resolve (C:\Users\smond\dev\sg_app\node_modules\metro\src\lib\transformHelpers.js:267:42)
    at C:\Users\smond\dev\sg_app\node_modules\metro\src\DeltaBundler\traverseDependencies.js:434:31
    at Array.map (<anonymous>)
    at resolveDependencies (C:\Users\smond\dev\sg_app\node_modules\metro\src\DeltaBundler\traverseDependencies.js:431:18)
    at C:\Users\smond\dev\sg_app\node_modules\metro\src\DeltaBundler\traverseDependencies.js:275:33
    at Generator.next (<anonymous>)
    at asyncGeneratorStep (C:\Users\smond\dev\sg_app\node_modules\metro\src\DeltaBundler\traverseDependencies.js:87:24)

请告诉我一种启用 ES2020 的方法

【问题讨论】:

    标签: javascript reactjs react-native babeljs ecmascript-2020


    【解决方案1】:

    您的错误似乎与 react-native-reanimated 包而不是 ES 版本有关。确保在你的 package.json 中安装了 react-native-reanimated,否则:

    npm i react-native-reanimated
    

    【讨论】:

    • 我用npm start -- --reset-cache 解决了这个问题,感谢@Elise Chant 的回复
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-08-18
    • 2018-03-28
    • 1970-01-01
    • 1970-01-01
    • 2020-07-26
    • 2023-02-23
    • 1970-01-01
    相关资源
    最近更新 更多