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

Implement getServerSnapshot in userspace shim #22359

Merged
merged 2 commits into from
Sep 20, 2021

Commits on Sep 20, 2021

  1. Convert useSES shim tests to use React DOM

    Idea is that eventually we'll run these tests against an actual build of
    React DOM 17 to test backwards compatibility.
    acdlite committed Sep 20, 2021
    Configuration menu
    Copy the full SHA
    a5bcf88 View commit details
    Browse the repository at this point in the history
  2. Implement getServerSnapshot in userspace shim

    If the DOM is not present, we assume that we are running in a server
    environment and return the result of `getServerSnapshot`.
    
    This heuristic doesn't work in React Native, so we'll need to provide
    a separate native build (using the `.native` extension). I've left this
    for a follow-up.
    
    We can't call `getServerSnapshot` on the client, because in versions of
    React before 18, there's no built-in mechanism to detect whether we're
    hydrating. To avoid a server mismatch warning, users must account for
    this themselves and return the correct value inside `getSnapshot`.
    
    Note that none of this is relevant to the built-in API that is being
    added in 18. This only affects the userspace shim that is provided
    for backwards compatibility with versions 16 and 17.
    acdlite committed Sep 20, 2021
    Configuration menu
    Copy the full SHA
    c496f7c View commit details
    Browse the repository at this point in the history