如何彻底清除AsyncStorage里面的东西?



  • 在index页设置了通过已输入电话号码判断自动登陆
    AsyncStorage.getItem("phone", (err, data) => {
    var phone = [ ]
    if (data) {
    phone = JSON.parse(data) || [];
    this.setState({value:phone});
    }
    })
    },
    render(){
    var val=(this.state.value)
    if(val!==0){
    return(
    <NavigatorIOS
    style={{flex:1}}
    initialRoute={{
    component:home,
    passProps:{},
    title:'',
    }}
    />
    );
    }else {
    return (
    <NavigatorIOS
    style={{flex:1}}
    initialRoute={{
    component:login,
    passProps:{},
    title:'',
    }}
    />
    );
    }
    然后在后面的页面中加入了清除按键,
    _clean:function(){
    return AsyncStorage.clear();},

    但是无效啊,每次进入依然是直接跳过login页面。
    求教正确的清除方式


  • administrators

    直接判断val!=0是不对的,因为getItem还需要时间,所以还需要一个loading
    参考
    http://bbs.reactnative.cn/topic/201



  • @sunnylqm
    谢谢~
    意思是在执行 AsyncStorage之前先执行一下引导页面耗一下时间吗?
    那引导页面怎么自动跳入后面(已登录/未登录)的页面呢?


  • administrators

    @wowaji 看我上面的链接


登录后回复