我在react-native中有一个Internet状态栏组件,其渲染方法如下所示:
render() {
if (this.state.isConnected) {
return false
}
return(...)
}
}
基本上,如果您的手机无法建立连接,它将在屏幕顶部显示一条消息,提示您连接到互联网。
但是,this.state.isConnected
的默认值为true,因此,当您开玩笑地测试快照时,您只是在快照中得到了空输出,即。
exports[`ConnectionBar Component renders 1`] = `null`
我想不出一种在测试中将this.state.isConnected
模拟为false的方法,因此在测试快照中什么也没有渲染。
PS:我不想将this.state.isConnected
的默认值设置为false,因为我在状态更改之前强加了一些延迟以防止闪烁,这将导致“检查您的连接”栏显示为在每个屏幕上显示约一秒钟,然后消失。
如果有人有什么见识,请告诉我。