【发布时间】:2021-05-07 18:10:07
【问题描述】:
我正在发帖,我得到了信息。但是在我检查以了解获取中是否有任何错误后,它会崩溃,因为它接收到未定义。
错误:
TypeError: undefined is not an object (near '...}).then(function (resp...')
它返回获取的内容
Object {"accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjoiQWFhYWFzcyIsImlhdCI6MTYxMjM1OTQ0M30.g18clMLcREy5cT6FwConZBpV_NJ69mwP56ddzQAhl50","id": "601aa71368c81c003324ff37"}
获取函数
export function registerNewUser(data) {
const url = "http://localhost:8080/user/register";
return axios.post(url, data)
.then((res) => {
console.log("fetch in")
console.log(res.data)
return res.data
}).catch(() => {
console.log("error")
return {accessToken: null, id: -1}
})
}
注册按钮
<TouchableOpacity
style={styles.loginScreenButton}
underlayColor='#fff'
onPress={async () => {
console.log("Pseudo: " + pseudo + "\nPassword: " + password);
setPseudoError(checkPseudo(pseudo));
setPasswordError(checkPassword(password));
if (checkPseudo(pseudo) === "" && checkPassword(password) === "") {
Promise.then(await registerNewUser({
username: pseudo,
password: password,
enrollment: 1
})).then(response => {
console.log("response: " + response)
if (response.id === -1) {
setPseudoError('Invalid pseudo or password')
setPasswordError('Invalid pseudo or password')
} else
navigation.navigate('Home', response)
})
}
}
}
>
【问题讨论】:
-
registerNewUser()不返回任何内容 -
是...返回 res 或返回 { accessToken: null, id: -1 }
-
@Andreas 应该怎么做?
-
让函数
return使用.then方法(例如Promise()) -
@Andreas 仍未定义
标签: javascript reactjs react-native axios