【发布时间】:2020-05-03 09:43:28
【问题描述】:
我正在尝试仅打印与用户相关的项目。
所以我尝试通过向用户 ID /api/items/:userid 请求数据来获取项目
我正在使用 redux 商店
我的服务器端代码是这样的
router.get("/:userid",(req, res) => {
// Item.find({ "owner.ownerName": `${req.params.userid}`})
Item.find({ "owner.id": `${req.params.userid}`})
.sort({
date: -1,
})
.then((items) => res.json(items));
console.log(req.user)
});
问题是我的前端请求。 我不知道如何在 ITEMACTION 中获取用户 ID。
import {
GET_ITEMS,
ADD_ITEM,
DELETE_ITEM,
ITEMS_LOADING,
UPDATE_ITEM,
SUBSTRACT_ITEM,
} from "../actions/types";
import { tokenConfig } from "../actions/authActions";
import { returnErrors } from "../actions/errorActions";
import Axios from "axios";
export const getItems = () => (dispatch) => {
// will hit reducer
dispatch(setItemsLoading());
Axios.get("/api/items/")
.then((res) =>
dispatch({
type: GET_ITEMS,
payload: res.data,
})
)
.catch((err) => {
dispatch(returnErrors(err.response.data, err.response.status));
});
};
我实际上试图从 redux 商店获取用户 ID。
import store from '../store';
在 getItems 内部
store.getState().auth.user._id
问题是,当我在 getItems 中 console.log 时,用户 id 总是返回 null,除了登录后的第一次。但是当我查看 redux 开发工具时。用户ID可用
如何获取用户名
【问题讨论】:
标签: javascript reactjs redux