Rx.Observable.generateWithRelativeTime(initialState, condition, iterate, resultSelector, timeSelector, [scheduler])

Generates an observable sequence by iterating a state from an initial state until the condition fails.

Arguments

  1. initialState (Any): Initial state.
  2. condition (Function): Condition to terminate generation (upon returning false).
  3. iterate (Function): Iteration step function.
  4. resultSelector (Function): Selector function for results produced in the sequence.
  5. timeSelector (Function): Time selector function to control the speed of values being produced each iteration, returning integer values denoting milliseconds.
  6. [scheduler=Rx.Scheduler.timeout] (Scheduler): Scheduler on which to run the generator loop. If not provided, defaults to Scheduler.timeout.

Returns

(Observable): The generated sequence.

Example

// Generate a value with an absolute time with an offset of 100ms multipled by value
var source = Rx.Observable.generateWithRelativeTime(
    1,
    function (x) { return x < 4; },
    function (x) { return x + 1; },
    function (x) { return x; },
    function (x) { return 100 * x; }
).timeInterval();

var subscription = source.subscribe(
    function (x) {
        console.log('Next: ' + x);
    },
    function (err) {
        console.log('Error: ' + err);
    },
    function () {
        console.log('Completed');
    });

// => Next: {value: 1, interval: 100}
// => Next: {value: 2, interval: 200}
// => Next: {value: 3, interval: 300}
// => Completed

Location

File:

Dist:

Prerequisites:

NPM Packages:

NuGet Packages:

Unit Tests:

results matching ""

    No results matching ""