Redux-persist: PersistGate Type error

Created on 23 Feb 2018  路  13Comments  路  Source: rt2zz/redux-persist

Hi,

I'm using redux with immutable and redux-persist.

Works good and auto hydrate from the storage to redux store is working. But, when I try to include PersistGate I get this error.

      <Provider store={store}>
        <PersistGate loading={() => <div>LOADING...</div>} persistor={persistor}>
          <RootComponent>
        </PersistGate>
      </Provider>

This is the persistor I set : {rehydrate: 茠, pause: 茠, resume: 茠, purge: 茠}
Looks the interface is the same as in the documentation.

The error:

Uncaught TypeError: this.props.persistor.subscribe is not a function
    at PersistGate.componentDidMount (react.js?e23e:53)
    at commitLifeCycles (react-dom.development.js:8770)
    at commitAllLifeCycles (react-dom.development.js:9946)
    at HTMLUnknownElement.callCallback (react-dom.development.js:542)
    at Object.invokeGuardedCallbackDev (react-dom.development.js:581)
    at invokeGuardedCallback (react-dom.development.js:438)
    at commitRoot (react-dom.development.js:10050)
    at performWorkOnRoot (react-dom.development.js:11017)
    at performWork (react-dom.development.js:10967)
    at requestWork (react-dom.development.js:10878)

I tried to use PersistGate to solve this issue https://github.com/rt2zz/redux-persist/issues/732 and i got this error

Thanks,

Most helpful comment

@diegolaciar it looks like you are using redux-persist v4, but somehow also getting PersistGate which is only available in (and compatible with) v5.

You can read about the upgrade here: https://github.com/rt2zz/redux-persist/blob/master/docs/MigrationGuide-v5.md

However please note there is no top level immutable support in v5. If you need top level immutable you will need to stick to v4 and not use PersistGate

All 13 comments

The loading prop takes either null or a component.

Thanks @thenewt15, but already changed that, the error persist. Write a component or null don' t fix this issue.

Also note that the Uncaught TypeError expect a subscribe function, as the ".subscribe(listener)" that redux Store have. https://redux.js.org/api-reference/store
Persistor do not have that function.

@diegolaciar it looks like you are using redux-persist v4, but somehow also getting PersistGate which is only available in (and compatible with) v5.

You can read about the upgrade here: https://github.com/rt2zz/redux-persist/blob/master/docs/MigrationGuide-v5.md

However please note there is no top level immutable support in v5. If you need top level immutable you will need to stick to v4 and not use PersistGate

I am experiencing the same issue as @diegolaciar.

Do you have a plan to support immutable in V5? Thanks to your awesome work : ) @rt2zz

I'm also experiencing this issue and am using redux-persist v5.0.7

I am also experiencing the same issue with [email protected]

same issue 5.10

same issue [email protected]

Was this page helpful?
0 / 5 - 0 ratings