【问题标题】:I GET array from API but when i try show it in the table it show me empty array (noob ReactJs)我从 API 获取数组,但是当我尝试在表中显示它时它显示空数组(noob ReactJs)
【发布时间】:2020-11-05 11:40:30
【问题描述】:

我创建了一个 Be api 我存在一个 Get 请求以从该 API 获取所有任务,

{
"tasks": [
    {
        "_id": "5f0b19c11f072e0984459ff5",
        "title": "some Edited random stuff ",
        "description": "some Edited random stuff",
        "creater": "vladi",
        "__v": 0
    },
    {
        "_id": "5f0b19d71f072e0984459ff6",
        "title": "vladi task ",
        "description": "vladi description",
        "creater": "vladi",
        "__v": 0
    }  ]

在我的 TaskReducer 中我做到了

tasks: {
  tasks: []
  },

现在在我的前端页面中,我要求在表格中查看所有内容

 <tbody>
                    {this.props.tasks.tasks.map((task, taskID) =>
                        <tr key={taskID}>
                            <th scope="row" >  2{task.title}</th>
                            <td >3{task.description}</td>
                            <td >4{task.creater}</td>
                            <td >5{task.dateCreated}</td>

                            <td >
                                <span className="pointer" onClick={() => this.handlerClickDeleteTask(task.taskID)}>delete  </span>
                                <span className="pointer" onClick={() => this.handlerClickViewTask(task.taskID)}>edit  </span>
                                <span className="pointer" onClick={() => this.handlerClickEditTask(task.taskID)}>view  </span>
                            </td>
                        </tr>

                    )}

                </tbody>

但是当我打开表格时它看起来是空的(甚至没有显示那里的数字) 如果有人有想法或认为需要更多,这是存储库的链接 https://github.com/VladiKonovalov/Fronted/blob/master/src/containers/Tasks.js

【问题讨论】:

  • 当您的数组为空时,因此没有要映射的内容,因此即使是硬编码的数字也不会呈现。从一个虚拟数据数组开始,首先检查你的 UI,然后调试看看你的数据结构哪里出错了。
  • 我的数组不是空的,它有信息(第一个代码)..我的 TaskReducer 是空的,因为我在一些编码的例子中他“清理”了所有内部,只保留 sclt
  • JSON 是运行时代码的结果吗? console.log(this.props.tasks.tasks) ?
  • 所以如果我打开我的网络,我会看到这是一个 GET TASKS 调用,甚至得到很好的响应,但如果我在 console.log(this.props.tasks.tasks) 中要求打印给我,请登录我将看到空数组和空长度
  • @Amir-Mousavi 你明白问题出在哪里了吗?

标签: javascript arrays reactjs mongodb react-redux


【解决方案1】:

usersActions.js 文件下,您正在设置用户而不是任务。

case "SET_TASKS":
    state = { ...state, users: action.payload }
    break;
default:

应该是这样的:

case "SET_TASKS":
    state = { ...state, tasks: action.payload }
    break;
default:

【讨论】:

  • 这样一个小而愚蠢的错误......谢谢你的朋友
猜你喜欢
  • 1970-01-01
  • 2021-12-19
  • 2021-02-10
  • 1970-01-01
  • 2014-05-13
  • 2021-02-26
  • 1970-01-01
  • 1970-01-01
  • 2014-06-25
相关资源
最近更新 更多