在 Web 平台上使用异步存储运行反应本机项目时出错

Posted

技术标签:

【中文标题】在 Web 平台上使用异步存储运行反应本机项目时出错【英文标题】:Error running react native project using async storage on web platform 【发布时间】:2020-04-27 05:28:12 【问题描述】:

我正在尝试在 Web 平台上运行 React Native 测试应用程序。 我已经安装了@react-native-community/async-storage 依赖项。 它会产生以下错误:

./node_modules/@react-native-community/async-storage/lib/AsyncStorage.js 中的错误 40:5 模块解析失败:意外令牌 (40:5) 您可能需要适当的加载程序来处理此文件类型。 | | 类型 ReadOnlyArrayString = $ReadOnlyArray; | |类型 MultiGetCallbackFunction = ( @ ./node_modules/@react-native-community/async-storage/lib/index.js 5:0-42 7:15-27 @ ./src/app.js @ ./index.web.js @multi (webpack)-dev-server/client?http://0.0.0.0:8080 (webpack)/hot/dev-server.js ./index.web.js

./node_modules/@react-native-community/async-storage/lib/hooks.js 中的错误 7:5 模块解析失败:意外令牌 (7:5) 您可能需要适当的加载程序来处理此文件类型。 |从'./AsyncStorage'导入AsyncStorage; | 类型 AsyncStorageHook = |获取项目:( |回调?:?(错误:?错误,结果:字符串|空)=>无效, @ ./node_modules/@react-native-community/async-storage/lib/index.js 8:0-40 8:0-40 @ ./src/app.js @ ./index.web.js @multi (webpack)-dev-server/client?http://0.0.0.0:8080 (webpack)/hot/dev-server.js ./index.web.js

注意:代码在 android 上运行,但不在 Web 上运行。

【问题讨论】:

React Native 项目的“不在网络上运行”是什么意思?你的意思是webView 【参考方案1】:
resolve: 
    alias: 
        '@react-native-community/async-storage': 'react-native-web'
    

在你的 webpack.config.json 中创建一个解析别名。

这可能对你有帮助

【讨论】:

以上是关于在 Web 平台上使用异步存储运行反应本机项目时出错的主要内容,如果未能解决你的问题,请参考以下文章

反应本机同步存储与 AsyncStorage

反应原生异步存储问题

反应导航上的反应本机缺少导航

在调试指向问题时反应本机

在博览会上发布反应本机应用程序时出现意外代码 404

在 socketcluster-client 错误中反应本机错误