Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ReactiveX/RxJS 5 in the browser without any loaders?

How do you load RxJS in an old javascript application which does not use any loaders?
For RxJS 4.x I could simply do it like this:

<script src="//cdnjs.cloudflare.com/ajax/libs/rxjs/4.0.7/rx.lite.min.js"></script> 

What about RxJS 5? Their documentation assumes that you are using some kind of loader that will take care of everything, but for the intermediate step for legacy application when there is no loader, just files packed at build time?

They also mention ability to create your own bundle by including only the functions you use for "size-sensitive bundling" which sounds great.
So should i just create an entry point file and then add it to my build process and use some kind of tool (browserify/gluejs/webmake) to build everything into a single file that as in RxJS4 would expose Rx (or simply Observable) as global variable?, eg:

// run this through some tool to make it available in browser simply as Observable
var Observable = require('rxjs/Observable').Observable;
require('rxjs/add/operator/map');
exports=Observable
like image 828
gerasalus Avatar asked Mar 11 '16 21:03

gerasalus


1 Answers

As same as RxJS 4, RxJS 5 also provides umd builds via cdn can be embeded without requiring any module loader like

<script src="https://npmcdn.com/@reactivex/[email protected]/dist/global/Rx.umd.js"></script>

then Rx will be global variable you can access anywhere.

You may refer CDN hosted build description at https://github.com/ReactiveX/rxjs#cdn .

like image 103
OJ Kwon Avatar answered Oct 21 '22 13:10

OJ Kwon