This package has been deprecated

Author message:

This module is now deprecated. You should move to using the serialization features of @shopify/react-html instead.

@shopify/react-serialize
TypeScript icon, indicating that this package has built-in type declarations

1.0.22 • Public • Published

@shopify/react-serialize

Note: This module is now deprecated. You should move to using the serialization features of @shopify/react-html instead.


Build Status License: MIT npm version npm bundle size (minified + gzip)

Provides an idiomatic way to serialize data for rehydration in a universal react application.

Installation

$ yarn add @shopify/react-serialize

Usage

On the server, the <Serializer /> component will serialize whatever you pass as it's data prop.

// in your server renderer
import {Serializer} from '@shopify/react-serialize';

...

const apolloState = getDatafromTree(appMarkup)

const markup = react.renderToString(
  <React.Fragment>
    {appMarkup}
    <Serializer id="apollo-data" data={apolloState}>
  </React.Fragment>
);

Then on the client, you can use getSerialized to fetch that data out of the DOM and initialize whatever you need.

// when you are rehydrating on the client
import {getSerialized} from '@shopify/react-serialize';
import ApolloClient from 'apollo-client';

...

const {data: initialApolloData} = getSerialized('apollo-data');
const client = new ApolloClient({
  ...myConfig,
  cache: cache.restore(initialApolloData),
});

Readme

Keywords

none

Package Sidebar

Install

npm i @shopify/react-serialize

Weekly Downloads

49

Version

1.0.22

License

MIT

Unpacked Size

6.13 kB

Total Files

12

Last publish

Collaborators

  • jaimie.rockburn
  • blittle
  • shopify-admin
  • maryharte
  • crisfmb
  • pmoloney89
  • netlohan
  • st999999
  • justin-irl
  • megswim
  • wcandillon
  • nathanpjf
  • shopify-dep
  • goodforonefare
  • lemonmade
  • vsumner
  • wizardlyhel
  • antoine.grant
  • tsov
  • andyw8-shopify
  • henrytao
  • hannachen
  • vividviolet
  • bpscott