当你使用Toast.loading('Loading...', 0),然后接着使用Toast.hide()来隐藏的时候,你会发现是无法隐藏的!
componentDidMount() {
Toast.loading('Loading...', 0);
Toast.hide();
}
个人觉得是Toast.loading对象还没有新建完成就隐藏的缘故,这时候你只需要延时一会儿隐藏就OK啦!
componentDidMount() {
Toast.loading('Loading...', 0);
setTimeout(Toast.hide, 20);
}
我们可以把Toast.hide()方法体打印出来看看缘由:
console.log(Toast.hide);
可以看到有一个messageInstance,大概是Toast都会产生一个messageInstance,Toast的时候都会先产生一个过渡动画,可能这个时候还没有产生messageInstance,所以这时候调用Toast.hide()隐藏是失效的!!!