Mazen Ahmed
Mazen Ahmed

Reputation: 57

home page appears on all routes with react-snap

i am using react-snap to pre-render pages with react-helmet and it works fine but i ran into two problems

here is my index.js:

import { hydrate, render } from "react-dom";
import React, { Suspense } from "react";
import { RecoilRoot } from "recoil";
import { BrowserRouter } from "react-router-dom";
// import worker from "mocks/browser";
import { ToastContainer } from "components/shared/uikit/toast/ToastContainer";
// import "swiper/swiper-bundle.min.css";
import Loader from "./components/shared/uikit/loaders/loader/Loader";
import "./index.css";
import App from "./App";
import "./configs/i18n";

const rootElement = document.getElementById("root");
if (rootElement.hasChildNodes()) {
    hydrate(
        <RecoilRoot>
            <ToastContainer>
                <Suspense
                    fallback={
                        <Loader
                            customSize={60}
                            suspense
                        />
                    }
                >
                    <BrowserRouter basename="/">
                        <App />
                    </BrowserRouter>
                </Suspense>
            </ToastContainer>
        </RecoilRoot>,
        rootElement
    );
} else {
    render(
        <RecoilRoot>
            <ToastContainer>
                <Suspense
                    fallback={
                        <Loader
                            customSize={60}
                            suspense
                        />
                    }
                >
                    <BrowserRouter>
                        <App />
                    </BrowserRouter>
                </Suspense>
            </ToastContainer>
        </RecoilRoot>,
        rootElement
    );
}

and here is my snippet from package.json:

 "reactSnap": {
        "puppeteerArgs": [
            "--no-sandbox",
            "--disable-setuid-sandbox"
        ]
    },

Upvotes: 1

Views: 348

Answers (0)

Related Questions