我正在尝试在我的 IOS 设备中运行我的 React Native 项目。我使用
npx react-native start
启动我的服务器,然后使用 Xcode 启动我的应用程序。我收到此错误:
error: Error: Unable to resolve module @react-native-community/async-storage from /Users/nicolelopez/dev/LeksPlay/src/Core/onboarding/utils/AuthDeviceStorage.js: @react-native-community/async-storage could not be found within the project or in these directories:
node_modules
../../node_modules
If you are sure the module exists, try these steps:
1. Clear watchman watches: watchman watch-del-all
2. Delete node_modules and run yarn install
3. Reset Metro's cache: yarn start --reset-cache
4. Remove the cache: rm -rf /tmp/metro-*
> 1 | import AsyncStorage from '@react-native-community/async-storage'
| ^
2 |
3 | const SHOULD_SHOW_ONBOARDING_FLOW = 'SHOULD_SHOW_ONBOARDING_FLOW'
我尝试过的:
1. Clear watchman watches: watchman watch-del-all
2. Delete node_modules and run yarn install
3. Reset Metro's cache: yarn start --reset-cache
4. Remove the cache: rm -rf /tmp/metro-*
我已经删除了node_modules和我的package.lock.json并重新安装了yarn并完成了pod安装。
我已尝试重新启动计算机
我尝试过做一个
yarn add @react-native-community/async-storage
我在节点 14 上运行 - 因为我在更高版本的节点上遇到了类似的问题。
我正在 Rosetta 模式下运行 Xcode - 因为我使用的是 Mac M1。
我尝试将 AsyncStorage 导入更改为
import AsyncStorage from '@react-native-async-storage/async-storage';
我也尝试添加
pod 'RNCAsyncStorage', :path => '../node_modules/@react-native-community/async-storage'
但它们都会导致同样的问题 - 这是我发布的错误代码。无论我尝试什么,结果都没有什么不同。我对原生反应真的很陌生,这可能是一个常见问题,但我似乎找不到任何有帮助的东西。
@react-native-async-storage/async-storage
的正确软件包。
您正在使用的版本已已弃用,请在以下位置查看:https://www.npmjs.com/package/@react-native-community/async-storage
两者同时存在会导致问题。
如果问题仍然存在,请尝试清除所有缓存,有一个很好的工具可以帮助您清理 React Native 项目:https://github.com/taboulot/rn-game-over
npx rn-game-over --all
如果您之后仍有问题,请使用新的详细信息更新您的问题。
正如文档中所写,它没有使用@react-native-comunity。这意味着你应该安装react-native-async-storage:
npm install @react-native-async-storage/async-storage
或
yarn add @react-native-async-storage/async-storage
而不是
npm install @react-native-community/async-storage
如果您在使用该软件包时遇到问题或错误, 这是我在项目中尝试解决问题的代码:
rm -rf $TMPDIR/metro-* && rm -rf $TMPDIR/haste-* && watchman watch-del-all && yarn cache clean --force && rm -rf ios/build && rm -rf node_modules/
我从这里得到了解决方案https://stackoverflow.com/a/67865721/8367675
这里是 2024 年 12 月安装异步存储的更新代码 npm install @react-native-async-storage/async-storage
并导入 从'@react-native-async-storage/async-storage'导入AsyncStorage;
为我工作。希望它也适合你