microsoft / ReSub

A library for writing React components that automatically manage subscriptions to data sources simply by accessing them
MIT License
607 stars 49 forks source link

Compatibility with Preact #135

Open Inve1951 opened 4 years ago

Inve1951 commented 4 years ago

Preact calls render with arguments. This is an iconic feature which allows destructuring props, state, and context in the parameter list. Currently ReSub breaks that pattern when Options.preventTryCatchInRender is falsy (which is the default).

Restoring compatibility should be as easy as forwarding the arguments list here.

Apparently I also have to manually set Options.development in order to get the TypeError thrown from destructuring undefined since my pipeline replaces the literal process.env.NODE_ENV at build time whereas you carefully test it for existence. I'll give that a shot tomorrow.

As a result my Components just rendered nothing and my coffee got cold.

Can we have this fixed? If you want a PR it will have to wait till after the holidays.

deregtd commented 4 years ago

We'd be happy to look at/take in a PR for it, but none of us on the team are using Preact or have any good way to test this, so it'd be better if you found an implementation you were happy with that you could test and we could just verify that it doesn't break anything else.