首页 > 解决方案 > 我怎样才能找到对象数据?

问题描述

TodoItem在 FlatList 中的组件中有多个对象值称为 items。另外,我有一个名为的对象值itemtow

我要做的是将与项目对象的 id 值和值匹配的项目对象itemtow's CommentId值放入结果常量中。

这是我的数据和代码

项目数据

    item: {id: 163, content: "부모1", createdAt: "2021-03-19T16:23:20.000Z", updatedAt: "2021-03-19T16:23:20.000Z", UserId: 1, …}

    item: {id: 164, content: "부모2", createdAt: "2021-03-19T16:23:23.000Z", updatedAt: "2021-03-19T16:23:23.000Z", UserId: 1, …}

    item: {id: 165, content: "부모3", createdAt: "2021-03-19T16:23:38.000Z", updatedAt: "2021-03-19T16:23:38.000Z", UserId: 2, …}

    item: {id: 166, content: "부모4", createdAt: "2021-03-19T16:23:41.000Z", updatedAt: "2021-03-19T16:23:41.000Z", UserId: 2, …}

数据项

    itemtow: {id: 268,  CommentId: 166, content: "부모4", active: "1", createdAt: "2021-03-19T16:23:41.000Z", updatedAt: "2021-03-20T05:56:24.000Z", …}

预期的结果数据

    expected result =  {id: 166, content: "부모4", createdAt: "2021-03-19T16:23:41.000Z", updatedAt: "2021-03-19T16:23:41.000Z", UserId: 2, …}

这是我的代码

(todoList.js)

    const TodoList = ({item}) => {

      return (

        <>
        <FlatList
          data={singlePost?.Comments}
          keyExtractor={(item) => String(item.id)}
          
          ListEmptyComponent={<EmptyItem />}
          renderItem={({item}) => (
            <TodoItem
              item={item}
              itemtow={itemtow}
            />
          )}
        />
      </>
      );
    };

    export default TodoList;

(TodoItem.js)

    const TodoItem = ({item ,itemtow}) => {


      const result = item.filter((v) => v.id === itemtow.CommentId);

      console.log("result:",result);

      return (

      )

我该如何修复我的代码?我试过使用过滤器,但它不起作用。

标签: javascriptnode.jsreactjsreact-native

解决方案


TodoItem组件中,是您传递给FlatListitem的数组中的单个元素(对象)。singlePost?.Comments

所以,你只需要检查item.id反对itemRow.CommentId

const TodoItem = ({ item, itemRow }) => {

  const matched = item.id === itemRow.CommentId
  console.log('matched? ', matched, item)

  return <>...</>
}

此外,您可能希望将[]后备值传递给FlatList

<FlatList
  data={singlePost?.Comments ?? []}
  ...

推荐阅读