Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Properties of Rx / Observable React-like Experiments #2928

Closed
4 tasks
sebmarkbage opened this issue Jan 24, 2015 · 2 comments
Closed
4 tasks

Properties of Rx / Observable React-like Experiments #2928

sebmarkbage opened this issue Jan 24, 2015 · 2 comments

Comments

@sebmarkbage
Copy link
Collaborator

This issue will be used to track some properties / features that are available in some experimental frameworks that build everything around Rx / Observable streams, but with liftable component boundaries.

I've identified a few that already overlap well with existing projects:

  • Error Propagation / Boundaries (Errors propagate up the hierarchy.) Error boundaries: Recover from errors thrown in render #2461
  • Completion Propagation (A signal to tell that a component will no longer change. Can be used for memory cleanup/collapsing, async server-side rendering, transition groups that clean up exit animations.)
  • "Prerendering" or "Lifting" Components (That then become opaque to their containers.)
    https://github.com/reactjs/react-future/tree/master/04%20-%20Layout
  • Async Reconciliation. (Any component can block the entire UI as waiting for data. Useful for server-side rendering or calling out to asynchronous, but fast APIs on the client, )

These features will probably be built in an optimized imperative style into the core but expose the same capabilities as if it was built as Observables.

It is a non-goal of this particular task to provide a similar API surface area to Observables but to track the capabilities exposed by such frameworks. It should be possible to experiment with alternative APIs that heavily rely on Observable semantics on top of these features.

@staltz
Copy link

staltz commented Feb 4, 2015

I would also always keep in mind that "web components everywhere" might be a strong assumption in the near future. So some of these features might need to be rethinked if the current assumption is "React components" everywhere. For instance, Error Propagation and Completion Propagation might not be doable neither desirable if web components are black boxes that do their own thing. Just my 2 cents.

@gaearon
Copy link
Collaborator

gaearon commented Oct 2, 2017

Seems like these thoughts influenced the new architecture, but we’re not currently actively thinking about these parallels. Closing.

@gaearon gaearon closed this as completed Oct 2, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants