gpt4 book ai didi

react-native-web - 为什么 NetInfo 不适用于 Web 但适用于 Android (react-native-web)?

转载 作者:行者123 更新时间:2023-12-05 05:12:47 24 4
gpt4 key购买 nike

当使用 react-native-web 时,NetInfo 适用于 Android 和 iOS,但不适用于 Web。

为了确认为 Web 运行的代码与 Android 相同,我在 componentDidMount 控制台登录,Android 和 Web 都会显示文本。然而,这些事件似乎不适用于网络版本。

// src/App.js

import React from 'react';
import { Provider } from 'react-redux';
import store from './utilities/storage/store';
import EntryScreen from './screens/EntryScreen';
import Routing, { Router } from './utilities/routing/index';
import { NetInfo } from 'react-native';

const Route = Routing.Route;

class App extends React.Component {
componentDidMount() {
console.log('App mounted');
NetInfo.isConnected.addEventListener('connectionChange', this.handleConnectivityChange);
}

componentWillUnmount() {
NetInfo.isConnected.removeEventListener('connectionChange', this.handleConnectivityChange);
}

/**
* Listens for any internet connectivity changes.
* @param isConnected The internet connection status
*/
handleConnectivityChange = (isConnected) => {
console.log ('bam');
console.log ('Connected:', isConnected);
};

render() {
return (
<Provider store={store}>
<Router>
<Route path="/" component={EntryScreen} />
</Router>
</Provider>
);
}
}

export default App;

我预计,根据 NetInfo 适用于 Web 和 Android 的文档。如果没有,请有人提供一种方法来做到这一点。

"react": "^16.2.0",
"react-art": "^16.2.0",
"react-dom": "^16.2.0",
"react-native": "0.57.8",
"react-native-web": "0.9.13",

最佳答案

与 iOS 和 Android React Native 相比,网络上的 NetInfo 缺少一些功能。只是没有等效的 Web API。

https://github.com/necolas/react-native-web/blob/master/README.md#modules

关于react-native-web - 为什么 NetInfo 不适用于 Web 但适用于 Android (react-native-web)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54259986/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com