JamesBert JamesBert - 1 month ago 13
Javascript Question

Including other ES6 modules in development

I'm developing a react component, and it depends on an ES6 component I'm also developing which I wrote first.

What's the normal way to include this at dev time while I'm working on the second component. Obviously, if the dependancy was in NPM it would be in my node_modules and I'd just import it.

I don't want to reference it by path as I'd have to remove that path every time I commit or publish.

Is there anything that would watch for changes in Module A and update the dependancy version in Module B?

Answer

Are your React component and ES6 component separate modules?

If so, you can use npm link.

First, go to your ES6 component's directory and run npm link. This will set up a symlink in your Node packages to the local version of your component.

Then, go into your React component directory and run npm link <es6-component-name>. This will create a symlink in your node_modules to the linked version of your ES6 component.

This only works for local development, obviously. If you want to distribute your React component and have it depend on your ES6 component separately, you'll need to publish them to NPM separately and add one as a dependency of the other.