|
7 年之前 | |
---|---|---|
.. | ||
native | 7 年之前 | |
PersistenceRegistry.js | 7 年之前 | |
README.md | 7 年之前 | |
_.native.js | 7 年之前 | |
_.web.js | 7 年之前 | |
index.js | 7 年之前 | |
middleware.js | 7 年之前 |
Jitsi Meet has a persistence layer that persists specific subtrees of the redux store/state into window.localStorage (on Web) or AsyncStorage (on mobile).
If a subtree of the redux store should be persisted (e.g.
'features/base/profile'
), then persistence for that subtree should be
requested by registering the subtree with PersistenceRegistry
.
For example, to register the field profile
of the redux subtree
'features/base/profile'
to be persisted, use:
PersistenceRegistry.register('features/base/profile', {
profile: true
});
in the reducer.js
of the base/profile
feature.
When it’s done, Jitsi Meet will automatically persist these subtrees and rehydrate them on startup.
To avoid too frequent write operations in the storage, we utilize throttling in the persistence layer, meaning that the storage gets persisted only once every 2 seconds, even if multiple redux state changes occur during this period. The throttling timeout can be configured in
react/features/base/storage/middleware.js#PERSIST_STATE_DELAY