Rx js la compréhension de la méthode de remontée
Je veux créer un nouvel opérateur et j'ai trouver dans le la documentation que l'un des moyens est de faire quelque chose comme ceci:
class MyObservable extends Observable {
lift(operator) {
const observable = new MyObservable()
observable.source = this;
observable.operator = operator;
return observable;
}
//put it here .. or ..
customOperator() {
/* do things and return an Observable */
}
}
//... put it here...
MyObservable.prototype.mySimpleOperator = mySimpleOperator;
Je ne comprends pas quel est le lift
méthode et ce qui se passe ici, quelqu'un peut aider, s'il vous plaît?
L'original GitHub proposition, l'explique bien: github.com/ReactiveX/RxJS/issues/60
OriginalL'auteur ng2user | 2017-05-04
Vous devez vous connecter pour publier un commentaire.
lift
est utilisé tout le temps, en interne, le RxJS 5. Le principe de l'ascenseur est à vous de préparer une nouvelle Observable que sur abonnez-vous transmettra les événements dans la façon dont l'opérateur définit. Il y a une bonne vidéo à ce sujet par Paul Taylor (https://youtu.be/QhjALubBQPg?t=19m). L'ascenseur est très fondamentale bloc de construction.Au lieu de créer une nouvelle classe de prolonger la Observables - vous pourriez tout aussi bien créer l'Opérateur lui-même. Les utilisateurs de l'opérateur peut alors l'appeler par écrit:
Cela signifie que personne ne doit apprendre que encore un autre opérateur est disponible dans les Observables de l'API, mais plutôt voit que c'est quelque chose de défini par ailleurs.
Idéalement, vous pouvez écrire
mais malheureusement la bind-opérateur peut être loin /n'arrivera jamais, de sorte que le
.lift(operator)
semble être la plus explicite /propre.OriginalL'auteur Herman