未处理的承诺拒绝:类型错误:未定义不是 expo 中的对象(评估 '_context.t0.data.error')


export default class Signin extends Component {
state ={
errorMessage: null
}

在这里,我使用api酱和凭据来测试连接

signin = async() => {
try{
const response = await api.post('/auth/authenticate')({
email:'teste93@teste.com',
password:'123'
})

const {user, token} = response.data
await AsyncStorage.multiSet([
['@backend : token', token]
['@backend : user',JSON.stringify(user) ]
])

博览会说错误在这里

}catch(response){
this.setState({errorMessage: response.data.error})
}

}
render() {
return (
<View style={styles.Container}>
{ this.state.errorMessage && <Text>{ this.state.errorMessage }</Text> }
<Button onPress={this.signin} title="Entrar"/>
</View>
);
}
}

这里是我的服务/api

import { create } from 'apisauce'

const api = create({
baseURL: 'http://locahost:300'
})
api.addResponseTransform(response => {
if (!response.ok) throw response;
console.log(response)
})
export default api;

TypeError:undefined不是对象

此错误通常表示您正试图访问非对象类型的属性。catch块中公开的值将是一个Error对象,该对象不具有data属性。

将您的catch块更改为以下内容。

} catch (error) {
this.setState({errorMessage: error.message})
}

相关内容

最新更新