0
为什么您必须链接可观察的实例方法才能使其工作。如果将一个observable赋值给一个变量,然后应用一个新的observable方法,则不会调用该新方法。RxJS分配变量的可观测方法
例如,这个工程:
var source = Rx.Observable.range(1, 3)
.map(function (x) {
return x;
})
.finally(function() {
console.log("Finally");
});
var subscription = source.subscribe(
function (x) {
console.log('Next: ' + x);
},
function (err) {
console.log('Error: ' + err);
},
function() {
console.log('Completed');
});
<script src="//cdnjs.cloudflare.com/ajax/libs/rxjs/2.2.28/rx.all.min.js"></script>
但这并不最后调用()方法:
var source = Rx.Observable.range(1, 3)
.map(function (x) {
return x;
});
// This is never called
source.finally(function() {
console.log("Finally");
});
var subscription = source.subscribe(
function (x) {
console.log('Next: ' + x);
},
function (err) {
console.log('Error: ' + err);
},
function() {
console.log('Completed');
});
<script src="//cdnjs.cloudflare.com/ajax/libs/rxjs/2.2.28/rx.all.min.js"></script>