首页 > 解决方案 > 条件给出了错误的数据

问题描述

我正在做一个 MERN 应用程序,但我陷入了困境

我有一个数组,我映射它,在映射到那个数组之后,我必须映射到里面的另一个数组

到目前为止,一切都很酷,一切正常,但是,我试图提出一个条件,如果那个条件是真的,你会告诉我一些信息,看看代码和图像

这就是数据的样子

在此处输入图像描述

这是代码

import React from "react";

import { TodoMain, Todo, Close, CloseIcon, TaskContainer } from "./ToDoStyled";

import { useSelector, useDispatch } from "react-redux";

const ToDo = ({ setTodo, idRoom, setIdRoom }) => {
  const handleTodo = () => {
    setTodo(false);
    setIdRoom("");
    document.body.style = "overflow: auto";
  };

  const user = JSON.parse(localStorage.getItem("profile"));

  const todo = useSelector(state =>
    state.tasks.filter(
      identificator => identificator.creator === user?.result?._id
    )
  );

  return (
    <div>
      <TodoMain>
        <Todo>
          <Close>
            <CloseIcon onClick={handleTodo} />
          </Close>
          <TaskContainer>
            {todo.map(data => {
              const { task, _id } = data;
              return (
                <div key={_id}>
                  {task.map(todo => {
                    return (
                      <>
                        {todo.room === idRoom && (
                          <h1 style={{ color: "white" }}>{todo.todo}</h1>
                        )}
                      </>
                    );
                  })}
                </div>
              );
            })}
          </TaskContainer>
        </Todo>
      </TodoMain>
    </div>
  );
};

export default ToDo;

所以,我所做的是,如果 todo.room === idRoom 那么你将向我展示具体信息,而我这样做的原因是因为我不想要来自另一个房间的信息,这就是我提出这个条件的原因

奇怪的是,如果我输入 todo.room 或 todo.name,它可以工作,但如果我输入 todo.todo,它不会显示任何东西,所以,我能做什么才能看到我的 todo。待办事项!?

标签: javascriptreactjsmern

解决方案


推荐阅读