index.js:12 SyntaxError:意外的令牌“<”、“<!DOCTYPE “...不是有效的 JSON

index.js:12 SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON

提问人:Renan Luiz 提问时间:11/6/2023 最后编辑:Mark RotteveelRenan Luiz 更新时间:11/8/2023 访问量:73

问:

我无法使用我创建的静态 API。我正确地遵循了路径,但它给出了这个错误。我不知道如何解决这个问题,我尝试了无数种方法,但没有用

索引.js:

import Container from "react-bootstrap/esm/Container";
import Row from "react-bootstrap/esm/Row";
import Col from "react-bootstrap/esm/Col";
import Navegacao from "../../Componentes/Navegacao";
import HeaderBiografia from "../../Componentes/Header";
import NavegacaoHeader from "../../Componentes/NavegacaoHeader";
import * as React from "react";
import Tendencias from "../../Componentes/Tendencias";
import "./secao-famosos.css";

function SecaoFamosos() {
  fetch("../../ColecaoDeDados/ColecaodeDados.json")
    .then((res) => res.json())
    .then((res) => console.log(res))
    .catch((err) => console.error(err));

  return (
    <Container fluid className="text-light">
      <Row className="justify-content-center">
        <Navegacao Row={Row} Col={Col} />
        <Col
          xs={12}
          sm={12}
          md={9}
          lg={9}
          xl={9}
          xxl={9}
          className="m-5 pb-4 rounded-3"
        >
          <HeaderBiografia Row={Row} Col={Col} />
          <NavegacaoHeader Row={Row} Col={Col} />
          <main className="mw-100 ms-2">
            <Row
              className="
            mt-5 flex-column flex-sm-row-reverse  
            align-items-center align-items-sm-start align-items-md-start
             align-items-lg-start align-items-xl-start align-items-xxl-start 
             justify-content-center"
            >
              <Col xs={12} sm={6} md={6} lg={6} xl={6} xxl={6}>
                <Tendencias Row={Row} Col={Col} />
              </Col>
              <Col xs={7} sm={6} md={6} lg={6} xl={6} xxl={6}>
                <h2 className="fs-1 text-center mb-5 mb-sm-5 d-none">
                  Famosos Próximos
                </h2>
                <Row className="justify-content-center">
                  <Col xs={12} sm={12} md={12} lg={6} xl={6} xxl={6}>
                    <div>
                      <h3 className="fs-3 text-center">Semelhantes</h3>

                      {/* {dadosArtistasSemelhantes.map((artista, id) => (
                        <DadosArtistas
                          key={id}
                          imagem={artista.imagem}
                          nome={artista.nome}
                        />
                      ))}

                      <h3 className="fs-3 text-center mt-5">Influências</h3>
                      {dadosArtistasInfluencas.map((artista, id) => (
                        <DadosArtistas
                          key={id}
                          imagem={artista.imagem}
                          nome={artista.nome}
                        />
                      ))} */}
                    </div>
                  </Col>

                  <Col
                    xs={12}
                    sm={12}
                    md={12}
                    lg={6}
                    xl={6}
                    xxl={6}
                    className="d-flex flex-column"
                  >
                    <h3 className="fs-3 text-center">Parcerias</h3>
                    {/* <DadosArtistas
                      imagem={dadoParceria.imagem}
                      nome={dadoParceria.nome}
                    />

                    <h3 className="fs-3 text-center mt-5">Amigos/Familias</h3>
                    {dadosArtistasAmigosEFamilias.map((artista, id) => (
                      <DadosArtistas
                        key={id}
                        imagem={artista.imagem}
                        nome={artista.nome}
                      />
                    ))}
                    <h3 className="fs-3 text-center mt-5">Amor</h3>
                    <DadosArtistas
                      imagem={dadoArtistaAmor.imagem}
                      nome={dadoArtistaAmor.nome} */}
                    {/* /> */}
                  </Col>
                </Row>
              </Col>
            </Row>
          </main>
        </Col>
      </Row>
    </Container>
  );
}
export default SecaoFamosos;

json格式:

{
  "semelhantes": [
    {
      "imagem": "../Assets/beyonce.jpg",
      "nome": "Beyoncé Knowles"
    },
    {
      "imagem": "../Assets/drake.jpg",
      "nome": "Drake"
    },
    {
      "imagem": "../Assets/negrali.jpg",
      "nome": "Negra Li"
    },
    {
      "imagem": "../Assets/jayz.jpg",
      "nome": "Jay-Z"
    },
    {
      "imagem": "../Assets/tyga.jpg",
      "nome": "Tyga"
    },
    {
      "imagem": "../Assets/rihanna.jpg",
      "nome": "Rihanna"
    }
  ],
  "influencias": [
    {
      "imagem": "../Assets/guime.jpg",
      "nome": "MC Guimê"
    },
    {
      "imagem": "../Assets/ritaora.jpg",
      "nome": "Rita Ora"
    }
  ],
  "parcerias": {
    "imagem": "../Assets/brunomars.jpg",
    "nome": "Bruno Mars"
  },
  "amigosEFamilias": [
    {
      "imagem": "../Assets/ladygaga.jpg",
      "nome": "Lady Gaga"
    },
    {
      "imagem": "../Assets/khloekardashian.jpg",
      "nome": "Khloé Kardashian"
    },
    {
      "imagem": "../Assets/caitynjenner.jpg",
      "nome": "Caityn Jenner"
    },
    {
      "imagem": "../Assets/kendalljenner.jpg",
      "nome": "Kendall Jenner"
    },
    {
      "imagem": "../Assets/kimkardashian.jpg",
      "nome": "Kim Kardashian"
    }
  ],
  "amor": {
    "imagem": "../Assets/kyliejenner.jpg",
    "nome": "Kylie Jenner"
  }
}

我尝试更改获取文件的路径,我检查了JSON数据是否正确,但此问题仍然存在。

javascript reactjs json 前端 fetch-api

评论

3赞 JSON Derulo 11/6/2023
看起来返回的是 HTML 页面,而不是您的数据。请检查此 HTML 页面的内容。通常它是一个错误页面,错误消息对于解决问题很有用。
0赞 Renan Luiz 11/10/2023
早上好,我通过将json放在react公共文件夹中解决了这个问题,但是当我把这个json返回放在usestate时,它说这个变量不存在,你有什么提示吗?

答: 暂无答案