开发者问题收集

React 显示来自对象 TypeError 的数据:值映射不是一个函数

2020-12-06
1186

尝试从值对象呈现数据时出现“TypeError:值未定义”错误,当我控制台记录值时,对象确实显示。

CODE

import React from "react";
import { useParams } from "react-router-dom";
import {
  useDocumentData,
} from "react-firebase-hooks/firestore";
import firebase from "../firebase";

const firestore = firebase.firestore();

const Threads = () => {
  const { threadId } = useParams();
  const [value, loading, error] = useDocumentData(firestore.collection("threads").doc(threadId));
  console.log(value);
  return (
    <div>
      {value.map((thread, i) => (
        <div>
          <h1>{thread.title}</h1>
          <p>{thread.desc}</p>
        </div>
      ))}
    </div>
  );
};

export default Threads;

控制台

在此处输入图像描述

错误

在此处输入图像描述

1个回答

变量值是一个对象。JS 中的 Map 函数仅适用于数组。 所以试试这个。

        <div>
          <h1>{value.title}</h1>
          <p>{value.desc}</p>
        </div>

   
Dhanujha R
2020-12-06