我在Reactive中搜索了使用延迟,但我仍然不明白为什么以及何时使用延迟方法.
据我所知,所有Observable方法在订阅之前都不会被触发,那么,为什么我们需要用defer方法包装observable方法呢?
请给我建议,如果给我举个例子,我将非常感激.
[更新]
现在我明白了.
在反应性文档中,我看到了这个例子,
var source = Rx.Observable.defer(function () {
return Rx.Observable.return(42);
});
var subscription = source.subscribe(
function (x) { console.log('Next: ' + x); },
function (err) { console.log('Error: ' + err); },
function () { console.log('Completed'); } );
Run Code Online (Sandbox Code Playgroud)
我很纳闷,
为什么它用延迟包装Observable方法?它将如何采取不同的行动?
rxjs ×1