#javascript #rxjs
#javascript #rxjs
Вопрос:
Попытка создать минималистичное приложение на чистом js с помощью rxjs.
Поток:
- npm install rxjs
- index.html
- myscript.js
Index.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="node_modules/rxjs/bundles/rxjs.umd.min.js" ></script>
<script src="myscript.js"></script>
<title>Document</title>
</head>
<body>
</body>
</html>
myscript.js:
rxjs.Observable.FromEvent(document, 'mousemove')
.subscribe(()=> console.log("text!"));
Я получаю сообщение об ошибке «Uncaught TypeError: rxjs.Observable.FromEvent не является функцией «
попытка импорта не удалась:
импортируйте ‘rxjs/add/ observable/FromEvent’; //Синтаксическая ошибка: неожиданная строка
или
импорт { FromEvent } из ‘rxjs’; //Ошибка синтаксиса: неожиданный токен {
Что я делаю не так? Как попробовать rxjs на чистом js?
Комментарии:
1. Попробуйте
import { from, fromEvent } from 'rxjs';
2. Для CDN вы можете использовать unpkg:
<script src="https://unpkg.com/rxjs/bundles/rxjs.umd.min.js"></script>
Затем,javascript const { range } = rxjs; const { map, filter } = rxjs.operators;
3. Спасибо за ваши ответы, ребята.
Ответ №1:
Для RxJS v6 возьмите заводские функции rxjs
и операторы из rxjs.operators
.
Вот пример с источником CDN:
var { fromEvent } = rxjs;
var { map } = rxjs.operators;
var theButton = document.getElementById('the-btn');
fromEvent(theButton, 'click').pipe(
// pipe some operators here
map(() => Date.now())
).subscribe(date => {
console.log('Clicked at ' date);
});
<script src="https://unpkg.com/rxjs@6.4.0/bundles/rxjs.umd.min.js"></script>
<button
id="the-btn"
>Clicker</button>
Комментарии:
1. Большое вам спасибо