jquery-deparam icon indicating copy to clipboard operation
jquery-deparam copied to clipboard

Does not work without jquery in React-Native

Open IanVS opened this issue 8 years ago • 2 comments

React-native has a require function, but it is not the same as that in node.js. One critical difference is that it does not support dynamic requires, and does not obey the try/catch block. All requires are done up-front upon static analysis so that the assets can all be packaged into a bundle.

At any rate, in my React-Native app, I do not use jQuery. I tried to use jquery-deparam, but with no luck. React-Native fails to bundle, because it cannot require(jquery).

Do you think it would be possible to make the jQuery dependency injection more explicit? Perhaps with something like:

import addDeparam from 'jquery-deparam';
import jQuery from 'jquery';

const $ = addDeparam(jQuery); // Adds `deparam` method to jQuery
const deparam = addDeparam(); // define `deparam` function to use standalone

IanVS avatar Dec 27 '16 19:12 IanVS

hm, I would imagine this problem would exist for other users of UMD and react-native. Basically, it your environment goes into the node js case, when it shouldn't.

anacronw avatar Dec 27 '16 20:12 anacronw

Yes, I verified that in my case, removing the first if block (which checks for require) works correctly.

IanVS avatar Dec 27 '16 20:12 IanVS