Comments (4)
React Context has an experimental feature called observedBits
. You can pass a calculateObservedBits
function in the second parameter of createContext
and pass the relevant bits in the second parameter of useContext
(or to the unstable_observedBits
prop on Consumer
).
from constate.
didn't this lib handle this for the end user in a previous version of constate? I say that because im aware of observerBits
but imo it'd be preferable to have this handled at the library level
from constate.
Yep! The current API is the result of some experimenting with several others around React Hooks. You can find them all here: https://github.com/diegohaz/constate/blob/master/CHANGELOG.md
In a previous version, there was only one Context/Provider for the whole state, so it made sense to limit re-renders on consumers based on slices of that state (namely context keys).
I don't think it makes too much sense introducing this kind of complexity now that contexts are more granular. Even if it did, I can't think on a way to do that since the state shape is unknown at the time the context is created.
from constate.
yea, performance optimizations for hooks/context are yet to be fully figured out, there's a great discussing in this issue (I'll link it here in case you haven't seen it) facebook/react#14110
going to go ahead and close this, thanks for answering
from constate.
Related Issues (20)
- Possible to do lazy splitting at time of hook usage? HOT 4
- Limit to the number of split values? HOT 2
- Accept generics in hook HOT 8
- Splitting ContextProvider definition from context value using part HOT 6
- Simple Package HOT 2
- Better Typescript types HOT 5
- Allow to invoke useCounter hook with arguments HOT 2
- Is it possible to have a ref to the Provider? HOT 5
- Demo for Complex Set State HOT 2
- How can i use overloading with constate? HOT 5
- How to pass props between nested providers HOT 1
- Mock initial state
- Types are not inferred properly HOT 6
- React Fast Refresh doesn't work on Constate side HOT 5
- Clarify that hooks are available in selector function HOT 4
- How to create selectors in order to listen on multiple changes in context's state? HOT 2
- When the selector returns an object, all components are re-rendered. HOT 2
- Migrate to GitHub actions
- How to access underling React.Context
- does constate support nested dynamic providers? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from constate.