首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有问题的反应项目,其他组成员可以编译,并正确工作。

有问题的反应项目,其他组成员可以编译,并正确工作。
EN

Stack Overflow用户
提问于 2022-06-21 17:48:29
回答 1查看 17关注 0票数 0

你好,这是我遇到的错误。

捕捉到的TypeError:无法在renderWithHooks的图书(books.js:51:1)中读取未定义的属性(读取“地图”)

代码语言:javascript
复制
   <div className="book-list">
                 (line 51)  {books.data.map((book) => (
                        <NavLink key={book.book_id} className={({isActive}) => isActive ? "active" : ""} to={`/books/${book.book_id}`} >
                            <span>&nbsp;</span>
                            <div>{book.title}</div>
                        </NavLink>
                        ))}
                </div>

我试图更新我的npm文件和重新安装,但没有joy。我的学校小组的其他成员没有这方面的问题,我们似乎找不到工作,尽管我们是从相同的GIT来源!

我们网站上的其他页面对我来说显示得很好,但出于某些原因,书籍页面没有显示。这是该页的完整代码。

代码语言:javascript
复制
import {settings} from "../../config/config";
import {useState, useEffect} from 'react';
import {NavLink, useLocation, Outlet} from "react-router-dom";
import './book.css';
import useXmlHttp from "../../services/useXmlHttp";
import {useAuth} from "../../services/useAuth";
import Pagination from "./pagination";

import React from 'react';

const Books = () => {

    const {user} = useAuth();
    const {pathname} = useLocation();
    const [subHeading, setSubHeading] = useState("All Books");
    //const url = settings.baseApiUrl + "/books";
    const [url, setUrl] = useState(settings.baseApiUrl + "/books");

    const {
        error,
        isLoading,
        data: books
    } = useXmlHttp(url, "GET", {Authorization: `Bearer ${user.jwt}`});

    useEffect(() => {
        setSubHeading("All Books");
    }, [pathname]);

    return (
        <>
            <div className="main-heading">
                <div className="container">Book</div>
            </div>
            <div className="sub-heading">
                <div className="container">{subHeading}</div>
            </div>
            <div className="main-content container">

                {error && <div>{error}</div>}
                {isLoading && <div className="image-loading">
                    <img src={require(`../loading.gif`)} alt="Loading ......"/>
                    </div>}
                {books && <div className="book-container">
                    <div className="book-list">
                        {books.data.map((book) => (
                            <NavLink key={book.book_id} className={({isActive}) => isActive ? "active" : ""} to={`/books/${book.book_id}`} >
                                <span>&nbsp;</span>
                                <div>{book.title}</div>
                            </NavLink>
                            ))}
                    </div>

                    <div className="book-item">
                        {books && <Pagination books={books} setUrl={setUrl}/>}
                        <Outlet context={[subHeading, setSubHeading]} />
                    </div>
                </div>}
            </div>
        </>
    );
};

export default Books;

超级令人沮丧,任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2022-06-21 18:29:11

这是数据问题。遇到此错误的人对于books有一个真实的值,但是books没有一个.data字段。

记录books以查看数据到底是什么。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72705106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档