• Rxjs как сделать последовательно два http запроса?

    nasnetstep
    @nasnetstep Автор вопроса
    Вообщем я нашел ответ сам, может кому-то пригодится
    flatMap и forkJoin

    // последовательно
    
    let someStream$ = service.getData().flatMap(res => {
      return service.deleteData(res)
    })
    
    someStream$.subscribe(res => {
       // res - результат последнего 
    })
    
    // параллельно
    let getData$ = service.getData();
    let deleteData$ = service.deleteData();
    
    Observable.forkJoin([getData$, deleteData$]).subscribe(results => {
          // results[0] дата из getData$
          // results[1] дата из deleteData$
          this.a = results[1];
          this.b = results[0];
        });
    Ответ написан
    Комментировать
  • Какие задачи решает реактивное программирование?

    nasnetstep
    @nasnetstep
    Пример из Википедии

    В императивном программировании выражение

    a = b + c
    Означает взять текущие значения 'b' и 'c', сложить их и присвоить 'a' результат. Дальнейшие изменения параметров 'b' и 'с' не влияют на 'a'.

    В реактивном программировании то же выражение:

    a = b + c
    Означает, что 'a' есть сумма 'b' и 'с'. Если 'b' или 'c' изменятся в будущем, это отразится на величине 'a'.
    Ответ написан
    Комментировать
  • Как правильно написать BASH файл?

    nasnetstep
    @nasnetstep Автор вопроса
    ssh -i /var/www/keys/my_key.pem user@xx.xx.xx.xx "cd /var/www/ && git fetch && git reset --hard origin/$1 && bash my_bash.sh"
    Ответ написан
    Комментировать