Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for prerender:true #12010

Merged
merged 12 commits into from
Sep 19, 2024
Merged

Add support for prerender:true #12010

merged 12 commits into from
Sep 19, 2024

Conversation

brophdawg11
Copy link
Contributor

@brophdawg11 brophdawg11 commented Sep 18, 2024

In simple "true static" sites, React Router can determine all of the static paths so there's no reason to require the app to tell us about the static paths via an array/function. This PR adds support for prerender: true which will walk your route tree and automatically prerender any paths that don't have dynamic/splat params.

We also expose this internal logic to the function API so you can just add your own dynamic paths on top of the known static paths:

export default defineConfig({
  plugins: [
    reactRouter({
      async prerender({ getStaticPaths }) {
        let slugs = await getBlogSlugsFromCms();
        return [
          ...getStaticPaths(),
          ...slugs.map((s) => `/blog/${s}`),
        ];
      },
    }),
  ],
});

In a routes.ts landscape this will be nice to avoid needing to add a route in 3 places - FS, routes.ts, prerender

Copy link

changeset-bot bot commented Sep 18, 2024

⚠️ No Changeset found

Latest commit: 6d8f062

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@brophdawg11 brophdawg11 merged commit e534217 into dev Sep 19, 2024
8 checks passed
@brophdawg11 brophdawg11 deleted the brophdawg11/prerender-true branch September 19, 2024 17:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant