Отмените все асинхронные задачи в методе componentWillUnmount. - PullRequest
0 голосов
/ 23 апреля 2020

Вот мой код, и я использую asyncstorage, чтобы установить имя пользователя. Я получаю эту ошибку

Я получаю предупреждение о невозможности выполнить обновление состояния React на отключенном компоненте. это указывает на утечку памяти. Отмена и асинхронные задачи в методе componentWillUnmount.

UNSAFE_componentWillMount(){ 
 this.getName()
 this.disableSEND()
}
getName = async () => {
    let value = 'userName'
    try {
        await AsyncStorage.setItem('NAME', value))

    } catch (e) {
        Alert.alert(e.message)
    }
}

disableSEND = async () => {
    let value = await AsyncStorage.getItem('SENDDISABLED')
    this.setState({ switch: value == 'true' ? true : false })
    let disableBtn = AsyncStorage.getItem('DISABLEBTN')
    this.setState({ disableBtn: disableBtn == 'false' ? false : true })
}
disableMSG = async (value) => {
    try {
        AsyncStorage.setItem('DISABLEMSG', value.toString())
    } catch (e) {
        Alert.alert(e.message)
    }
}

disableBtn = async (disableBtn) => {
    try {
        AsyncStorage.setItem('DISABLEBTN', disableBtn.toString())

    } catch (e) {
        Alert.alert(e.message)
    }
}
render() {
    return (
        <DrawerContentScrollView {...this.props}>

        </DrawerContentScrollView>
    );
}

}})

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...