【发布时间】:2022-01-31 03:38:43
【问题描述】:
我正在处理登录页面并尝试在上下文中存储我的数据。但是我从数据库中得到的响应是未定义的。
我认为我做错了什么。请帮忙
这是我的代码 sn-p "AUTH CONTEXT" (auth Context 文件返回 undefined 作为响应)
import { signIn as signInApi } from '../apis'
const AuthContext = createContext()
export const AuthProvider = ({ children }) => {
const [token, setToken] = useState(localStorage.getItem('token'))
const [user, setUser] = useState(localStorage.getItem('user'))
const [loading, setLoading] = useState(false)
const signIn = async (email, password, callback) => {
setLoading(true)
const res = await signInApi(email, password)
console.log(res)
......
const value = {
token,
loading,
signIn,
signOut,
}
}
export default AuthContext
APIS.JS(下面的 API.js 文件从数据库返回响应数据)
import axios from 'axios'
export const signIn = async (email, password) => {
try {
const res = await axios.post(
`${process.env.REACT_APP_API}/auth/login`,
{
email,
password,
},
{
headers: {
'Content-Type': 'application/json',
},
}
)
} catch (error) {
console.log(error)
}
}
登录文件
const auth = useContext(AuthContext)
const handleLogin = (e) => {
e.preventDefault()
auth.signIn(email, password, () => history.replace('/admin'))
}
【问题讨论】:
-
API.js 中的
signIn不返回res
标签: reactjs mongoose react-redux react-state-management react-context