suspend-react
react-18
suspend-react | react-18 | |
---|---|---|
13 | 139 | |
1,326 | 5,173 | |
0.2% | 0.0% | |
4.9 | 0.0 | |
6 months ago | almost 3 years ago | |
TypeScript | ||
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
suspend-react
-
React seems to bury the lede on the new Suspense documentation
We have built the poimandres eco system on suspense. Our state managers use it (Jotai, Valtio), we have specific libraries for it like https://github.com/pmndrs/suspend-react, and practically everything in three-fiber bases on it. Suspense allows components to handle and orchestrate async tasks, it is as simple as that.
- What does React Suspens bring more than useState or useEffect?
-
I don't understand Suspense
you need to integrate the loading into suspense. react-query for instance. for simple things, async tasks etc, use https://github.com/pmndrs/suspend-react
-
Can you make a throw promise hook?
you will pretty much always end up with this: https://github.com/pmndrs/suspend-react a naive caching mechanism. but what you do there probably doesn't work because the components get unmounted, so you loose that flag state. currently the cache is kept in global space, a weakmap or a map, later react will take care of it.
-
Suspense in React 18
Problems like caching or multiple promises are handled by whichever data fetching solution you use or something generic like suspend-react which will handle them for you.
-
any reference for fetch api using redux ..?
you don't fetch api with redux. react has suspense, handling async ops is inbuilt into the framework itself. use redux alongside something like this https://github.com/pmndrs/suspend-react
-
Redux Toolkit doesn't really seem to save on boilerplate.
as for request, you should use suspense for that, routing this through your state manager is a mistake. this is all inbuilt into react now, loading, fallbacks, and composition is better done by react. your state manager could hold a url, but he fetching is done by something like this: https://github.com/pmndrs/suspend-react
-
Fella needs help doing some logic...
you can use this library: https://github.com/pmndrs/suspend-react
-
Interesting problem I am facing with a React pattern.
another thing is, this awful fetching and lifting up thing in react goes completely away with suspense. this will become the norm and code like above will vanish, but did you know that this has been a part of react since 16? for instance: https://github.com/pmndrs/suspend-react
-
State won't update inside .then
the problem with this kind of code is that it always gets messy, there's an error or a race somewhere in there and it will only get worse in scale. you can safely remove 95% of that code if you used suspense: https://github.com/pmndrs/suspend-react
react-18
-
Simulate global state tradeoffs in React concurrent mode
If you aren't sure why state tearing was a hot topic a few years ago, when React's concurrent mode was first discussed, this github discussion should help: https://github.com/reactwg/react-18/discussions/69.
Tanner Linsley had a great post on twitter that suggested that concurrent rendering was fundamentally at odds with fine-grained reactivity, so to better understand what he was talking about I decided to write this demo.
- A modest request: How do you fetch data in React 18+ WITHOUT a third party dependency?
-
The Sisyphean Quest for Web Performance
Image Source: https://github.com/reactwg/react-18/discussions/37
-
useAsyncState in react, no more unnecessary useEffects.
But it does since React 18.
-
Function props
See this post for more details and an example of an actual memory leak.
-
ELI5, why is ReactDOM.createRoot an improvement over ReactDOM.render?
From the React WG:
- I know my component is re-rendering because a console.log I put in the component is logging in the console. However when I use the inspector to see why it re-rendered, its saying that it didnt re-render. How is this possible?
- Timeout in event handler
-
The current state of CSS-in-JS + React
The React working group is officially advising against using runtime CSS-in-JS.
- Warning abt setting state of unmounted component
What are some alternatives?
react-suspense-fetch - [NOT MAINTAINED] A low-level library for React Suspense for Data Fetching
Preact - ⚛️ Fast 3kB React alternative with the same modern API. Components & Virtual DOM.
htmx - </> htmx - high power tools for HTML
petite-vue - 6kb subset of Vue optimized for progressive enhancement
react-query - 🤖 Powerful asynchronous state management, server-state utilities and data fetching for TS/JS, React, Solid, Svelte and Vue. [Moved to: https://github.com/TanStack/query]
React - The library for web and native user interfaces.
zustand - 🐻 Bear necessities for state management in React
rfcs - RFCs for substantial changes / feature additions to Vue core
vite - Next generation frontend tooling. It's fast!
prepack - A JavaScript bundle optimizer.
react-redux - Official React bindings for Redux
rfcs - RFCs for changes to React