Я хочу вызвать функцию (синхронно), а затем использовать ее возвращаемое значение как начальное излучение (впоследствии связать некоторые другие операторы по полученным наблюдаемым).Как создать наблюдаемый из функции?
Я хочу использовать эту функцию во время подписки, поэтому я не могу просто использовать Observable.of(() => getSomeValue())
. Я видел bindCallback
(ранее fromCallback
), но я не думаю, что он может быть использован для этой задачи (исправьте меня, если я ошибаюсь). Я видел start
статический оператор в документах v4, но, по-видимому, он не реализован в версии 5 (и никаких указаний на то, что он в пути). У RxJava также есть оператор fromCallable
, который делает именно этот афайк.
Только так я мог думать о том, как это:
Observable.create((observer: Observer<void>) => {
let val = getSomeValue();
observer.next(val);
observer.complete();
})
, который я думаю, что делает именно это. Но это просто кажется сложным для простой вещи, которая, вероятно, была бы такой, как Observable.fromFunction(() => getSomeValue())
И что, если я хочу запустить ее асинхронно, например, start
оператор делает? Как я могу сделать это в текущем правиле RxJS?
Что вы пытаетесь достичь? Вызов цепочки функций? –
@ChirdeepTomar да, я пытаюсь использовать функцию в качестве наблюдаемого в семенах и цепочке операторов по его результату. – Titan
посмотреть на планшет с подпиской. http://stackoverflow.com/questions/35268482/chaining-rxjs-observables-from-http-data-in-angular2-with-typescript –