当前位置: 首页 > 知识库问答 >
问题:

使用帖子列表显示 React 中帖子的创建者姓名

袁泓
2023-03-14

我正在react和react中创建一个带有创建者姓名的帖子列表

https://jsonplaceholder.typicode.com用户和帖子API

我的操作文件

 export const fetchuser = (id) => async dispatch => {
        const response = await instance.get(`./users/${id}`)
        dispatch({
            type : "GET_USERS",
            payload :response.data
        })
    }

我的组件

import React, { Component } from 'react'
import {fetchuser} from '../actions'
import { connect } from 'react-redux'

class Postuser extends Component {
    componentDidMount(){
        this.props.fetchuser(this.props.userid)
    }
    render() {
        const user = this.props.users.find((user) => user.id === this.props.userId);
        if(!user){
            return null
        }
       return <div>{user.name}</div>
    }
}
const mapStateToProps = state => {
    return {
       users:state.users 
    }
}
export default connect(mapStateToProps,{fetchuser})(Postuser)

减速机

export default function userreducer(state=[], action) {
       switch(action.type){
        case"GET_USERS" :
        return [...state, action.payload]
        default : return state
       }
}

使用该组件的父组件

 <Postuser userId={post.userId} />

我收到此错误消息,请检查

EThttps://jsonplaceholder.typicode.com/users/undefined404 2创建错误。js:17未捕获(promise中)错误:请求失败,在XMLHttpRequest的settle(settle.js:19)处的createError(createError.js:17)处的状态代码为404。手荷载(xhr.js:60)

共有1个答案

汪高岑
2023-03-14

好吧,你做错了什么,你把userId传递为

 <Postuser userId={post.userId} />

但不能正确访问它,请按以下步骤操作

componentDidMount(){
    this.props.fetchuser(this.props.userId) // I capital
}

希望有帮助

 类似资料:
  • 我们曾经轻松地通过控制台去使用 Posts.insert 来创建帖子并插入到数据库。但我们不可能指望用户去打开控制台来创建一个新的帖子吧? 所以我们需要在用户界面上创建一些表单控件,让用户在我们的 App 上发布一些新的帖子。 构建新帖子的提交页面 我们首先为新帖子的提交页面定义一个路由: Router.configure({ layoutTemplate: 'layout', loadi

  • 本文向大家介绍在帖子上显示点赞,其中数组指定使用JavaScript顶特定帖子的人的姓名,包括了在帖子上显示点赞,其中数组指定使用JavaScript顶特定帖子的人的姓名的使用技巧和注意事项,需要的朋友参考一下 问题 我们需要编写一个包含名称(字符串)数组的JavaScript函数。该数组指定喜欢某个社交网站上特定帖子的人员的姓名。 如果点赞次数少于或等于3,则我们的函数应简单返回所有名称,表明这

  • 在一个新的WordPress模板中,我想自定义单个。php,以便仅向帖子作者显示评论列表。 其他用户(客人和其他帖子作者)不应该看到评论或空白。 总之,帖子作者(登录时)可以在他的帖子底部看到评论列表,但在其他作者写的帖子底部看不到任何内容。 我应该对下面的代码应用什么条件代码? 这仅适用于前端。我不关心管理面板。

  • 我目前正在完成一个客户网站的工作,我希望作者的简历出现在单篇文章的底部。唯一的问题是,我只想在填写用户简历的前端显示此部分。我很快就能让它工作了,但是由于某种原因,当bio部分包含副本时,下面代码中的内容没有显示在前端。 任何帮助都将不胜感激。谢谢

  • 圈子帖子列表 圈子帖子详情 圈子帖子创建 圈子帖子更新 圈子帖子删除 我的帖子列表 全部帖子列表包含搜索 圈子帖子列表 GET /groups/:group/posts 响应 status 200 参数说明 名称 类型 说明 type string 默认:latest_post, latest_post 最新帖子,latest_reply最新回复 limit integer 默认 15 ,数据

  • 我觉得这个问题有一个非常简单的解决方案。但是,在尝试解决了大约3个小时未果后,我谦卑地来找你。 一个自定义的帖子类型,乐队,已经创建,并有几个自定义字段(这是通过高级自定义字段插件创建的。) 我将如何获得和显示的内容(特别是自定义字段数据)的特定带条目(使用其ID或标题或段塞)内的一个常规的帖子?(见下图) 我们必须提供ID/title/slug,以便它知道要显示的band post的内容 短代码