【问题标题】:Error: Unable to resolve module `buffer` React Native错误:无法解析模块`buffer` React Native
【发布时间】:2019-08-09 03:22:05
【问题描述】:

我在 Android 上构建项目时遇到错误

错误:捆绑失败:错误:无法从 E:\SUNNYCLOCK-MOBILE\node_modules\safe-buffer\index.js 解析模块 buffer:模块 buffer在急速模块地图中不存在

这可能与 https://github.com/facebook/react-native/issues/4968解决试试 下列: 1.清除守望者手表:watchman watch-del-all。 2、删除node_modules文件夹:rm -rf node_modules && npm install。 3. 重置 Metro Bundler 缓存:rm -rf /tmp/metro-bundler-cache-*npm start -- --reset-cache。 4. 移除急速缓存:rm -rf /tmp/haste-map-react-native-packager-*。 在 ModuleResolver.resolveDependency (E:\SUNNYCLOCK-MOBILE\node_modules\metro\src\node-haste\DependencyGraph\ModuleResolution.js:161:1460) 在 ResolutionRequest.resolveDependency (E:\SUNNYCLOCK-MOBILE\node_modules\metro\src\node-haste\DependencyGraph\ResolutionRequest.js:91:16) 在 DependencyGraph.resolveDependency (E:\SUNNYCLOCK-MOBILE\node_modules\metro\src\node-haste\DependencyGraph.js:272:4579) 在 dependencies.map.relativePath (E:\SUNNYCLOCK-MOBILE\node_modules\metro\src\DeltaBundler\traverseDependencies.js:376:19) 在 Array.map () 在 resolveDependencies (E:\SUNNYCLOCK-MOBILE\node_modules\metro\src\DeltaBundler\traverseDependencies.js:374:16) 在 E:\SUNNYCLOCK-MOBILE\node_modules\metro\src\DeltaBundler\traverseDependencies.js:212:33 在 Generator.next () 在步骤 (E:\SUNNYCLOCK-MOBILE\node_modules\metro\src\DeltaBundler\traverseDependencies.js:297:313) 在 E:\SUNNYCLOCK-MOBILE\node_modules\metro\src\DeltaBundler\traverseDependencies.js:297:473 捆绑 [android, dev] ./index.js ▓▓▓▓▓▓▓▓░░░░░░░░ 51.9% (813/1143), 失败了。

我的 React 原生信息是

Environment:
  OS: Windows 10
  Node: 8.9.1
  Yarn: 1.7.0
  npm: 4.6.1
  Watchman: Not Found
  Xcode: N/A
  Android Studio: Not Found

Packages: (wanted => installed)
  react: 16.3.1 => 16.3.1
  react-native: 0.55.4 => 0.55.4

我该如何解决这个问题

【问题讨论】:

    标签: reactjs react-native


    【解决方案1】:

    首先安装缺少的依赖buffer

    npm install buffer --saveyarn add buffer

    第二

    在文件顶部使用buffer

    import { Buffer } from 'buffer';
    global.Buffer = Buffer;
    

    如果你不需要直接访问Buffer,只需将上面的代码粘贴到你的App.js文件中

    【讨论】:

    • 我没有在我的应用程序中使用缓冲区
    • 但我猜它是另一个 npm 模块的依赖项,请修改我的答案
    • 让我试试这个
    • 我认为 npm install buffer --save 帮助了我
    • 这个对我有用,但导致另一个错误
    猜你喜欢
    • 1970-01-01
    • 2019-07-06
    • 2017-06-06
    • 1970-01-01
    • 2019-08-16
    • 2022-12-12
    • 1970-01-01
    • 1970-01-01
    • 2016-10-27
    相关资源
    最近更新 更多