Reactive-Extensions / RxJS

The Reactive Extensions for JavaScript
http://reactivex.io
Other
19.49k stars 2.1k forks source link

How am I supposed to import observable methods? #1553

Open Sawtaytoes opened 6 years ago

Sawtaytoes commented 6 years ago

I'm planning on using Webpack 4 in the future and am currently on Webpack 3. I'd like to get the full benefit of tree-shaking and want to make sure I'm importing rxjs correctly in my projects.

First, Webpack 4 has a thing that restricts you to either cjs, esm, or any import format. Webpack 3 does not have this, but does utilize tree-shaking where it exists.

When I do:

import { bindCallback } from 'rxjs/observable/bindCallback'

Am I using the cjs method and tree-shaking or will this automatically use esm if available?

From using other libraries like date-fns, I believe I have to do this instead:

import { bindCallback } from 'rxjs/_esm2015/observable/bindCallback'

Is my assumption correct, or do I keep calling imports like I've always been doing (the first example)?