Как цепочка Наблюдаемые динамически с помощью итерабельного / списка?

Достаточно просто написать собственную функцию сравнения:

function compare(a,b) {
  if (a.last_nom < b.last_nom)
    return -1;
  if (a.last_nom > b.last_nom)
    return 1;
  return 0;
}

objs.sort(compare);

Или встроенный (c / o Marco Demaio):

objs.sort(function(a,b) {return (a.last_nom > b.last_nom) ? 1 : ((b.last_nom > a.last_nom) ? -1 : 0);} ); 
0
задан creampiedonut 13 July 2018 в 20:46
поделиться

1 ответ

Используйте fromIterable, concatMap и takeUntil(Predicate):

Observable.fromIterable(tasks)
    .concatMap(task ->
        Observable.just(new Task(task))
            .compose(executeWorkFlow())
    )
    .takeUntil(response -> !response.isSuccess)
1
ответ дан akarnokd 17 August 2018 в 12:09
поделиться
  • 1
    Эй, у меня есть следующий вопрос. Если я хочу получить ответ, который используется для создания следующей Observable & lt; Task & gt ;, как я могу это сделать? (Скажем, теперь задача создается как таковая new Task(task, previousResponse)) – creampiedonut 14 July 2018 в 06:57
  • 2
    Сохраните предыдущий ответ в поле или AtomicReference и зачитайте его в concatMap. – akarnokd 14 July 2018 в 07:20
Другие вопросы по тегам:

Похожие вопросы: