我们通过以下方式使用 native NetInfo。
export default class NetworkStatus extends React.PureComponent {
constructor(props){
super(props);
NetInfo.addEventListener(
'change',
this.onConnectivityChange
);
}
onConnectivityChange = (status) => {
NetInfo.isConnected.fetch().then(isConnected => {
console.log('*********Network status ' + (isConnected ? 'online' :
'offline'));
});
}
在离线模式下启动该应用程序。我们得到了以下控制台。然后,我们打开了wifi并已连接。但是我们有两次离线控制台。
这是NetInfo库中的错误吗?有没有办法解决它。
使用的版本:
“ react ”:“16.0.0-alpha.6”
“react-native”:“0.44.0”,
最佳答案
你必须改变
NetInfo.addEventListener(
'change',
this.onConnectivityChange
);
至
NetInfo.addEventListener(
'connectionChange',
this.onConnectivityChange
);