Site en local qui fonctionne mais sans pdf apres netlify

Nesil Messages postés 37 Date d'inscription mardi 21 juin 2022 Statut Membre Dernière intervention 1 juillet 2024 - 1 juil. 2024 à 14:16

Bonjour,

Lorsque je run mon projet en local tout fonctionne correctement.

Mais une fois publié avec netlify, voila le message d'erreur qui s'affiche: "Failed to load PDF file."

voila mon build setting de netlify:

 et voila mon build dans visual studio code:

 Comment faire? voila au cas ou le code d'un fichier type pour afficher un pdf et le fichier de config d'affichage du pdf via la lib react-pdf:

prologue.js:

import './Pages.css';
import '../App.css';
import 'bootstrap/dist/css/bootstrap.min.css';
import { useEffect } from "react";
import PDFViewerComponent from '../components/PDFViewerComponent';
import Container from 'react-bootstrap/Container';
import { useNavigate } from 'react-router-dom';
import Nav from 'react-bootstrap/Nav';
import Navbar from 'react-bootstrap/Navbar';

const Prologue = () => {
  useEffect(() => {
    document.body.classList.add('no-scroll'); // Ajoutez la classe no-scroll au body
    return () => {
      document.body.classList.remove('no-scroll'); // Retirez la classe no-scroll du body lorsque le composant est démonté
    };
  }, []);

  const navigate = useNavigate();

  return (
    <div className="Prologue">
      <Navbar expand="lg">
        <Container>
          <Navbar.Collapse id="basic-navbar-nav">
            <Nav className="mx-auto">
              <Nav.Link href="#sommaire" className={'navbar-link'} onClick={() => navigate('/')}>Retour au sommaire</Nav.Link>
              <Nav.Link href="" className={'navbar-link'} onClick={() => navigate('/repereschrono')}>Chapitre suivant</Nav.Link>
            </Nav>
          </Navbar.Collapse>
        </Container>
      </Navbar>
      <div className="PDF-viewer-container">
        <PDFViewerComponent document={"/prologue.pdf"} />
      </div>
    </div>
  );
};

export default Prologue;

et voila mon PdfViewerComponent:

import '../pages/Pages.css';
import React, { useState } from 'react';
import { Document, Page } from 'react-pdf';
import 'react-pdf/dist/esm/Page/AnnotationLayer.css';
import 'react-pdf/dist/esm/Page/TextLayer.css';

const PDFViewerComponent = ({ document }) => {
  const [numPages, setNumPages] = useState(null);
  const [pageNumber, setPageNumber] = useState(1);

  const onDocumentLoadSuccess = ({ numPages }) => {
    setNumPages(numPages);
  };

  const goToPrevPage = () => setPageNumber(pageNumber - 1);
  const goToNextPage = () => setPageNumber(pageNumber + 1);

  return (
    <div className="pdf-viewer">
      <div className="controls"> 
        <button onClick={goToPrevPage} disabled={pageNumber <= 1}>
          Précédent
        </button>
        <span>Page {pageNumber} of {numPages}</span>
        <button onClick={goToNextPage} disabled={pageNumber >= numPages}>
          Suivant
        </button>
      </div>
      <div className="document-container">
        <Document
          file={document}
          onLoadSuccess={onDocumentLoadSuccess}
        >
          <Page pageNumber={pageNumber} />
        </Document>
      </div>
    </div>
  );
};

export default PDFViewerComponent;

A voir également: