Reputation: 2432
I cannot figure out how to use WebSocketSubjects in rxjs v6.x
Here's the working HTML/JS for v5.5.6
. The commented out code is my attempt at getting it working in v6.x
:
<html>
<head>
<!-- <script src="https://unpkg.com/@reactivex/[email protected]/dist/global/rxjs.umd.js"></script> -->
<script src="https://unpkg.com/@reactivex/[email protected]/dist/global/Rx.js"></script>
<script>
// const { WebSocketSubject } = rxjs.webSocket;
// const socket$ = WebSocketSubject.create('ws://localhost:8080');
const socket$ = Rx.Observable.webSocket('ws://localhost:8080');
socket$.subscribe(
(data) => console.log(data),
(err) => console.error(err),
() => console.warn('Completed!')
);
socket$.next(JSON.stringify({
event: 'events',
data: 'test',
}));
console.log('here')
</script>
</head>
<body></body>
</html>
Upvotes: 3
Views: 9534
Reputation: 2432
I got it working with [email protected]
. As I suspected, I was just using the version 6 syntax wrong. See working example:
<html>
<head>
<script src="https://unpkg.com/@reactivex/[email protected]/dist/global/rxjs.umd.js"></script>
<script>
const { WebSocketSubject } = rxjs.webSocket;
const socket$ = new WebSocketSubject('ws://localhost:8080');
socket$.subscribe(
(data) => console.log(data),
(err) => console.error(err),
() => console.warn('Completed!')
);
socket$.next({
event: 'events',
data: 'test',
});
console.log('here')
</script>
</head>
<body></body>
</html>
Upvotes: 9