сервисе get и update. В первом получаю из базы данных object во втором этот object обновляю. В компоненте делаю subscribe на get метод , ну и соответственно значение которое приходит это значение observable из firebase. Далее в этом subscribe вызываю метод update и передаю данные uid и новые значения из инпута. Смысл в том чтобы пришли методом гет те данные что стоят в бд , от них отнялось то что стоит в инпуте и новое значение записалось опять в бд. И вот тут и получается интересная штука. Значение начинается ставится в цикле, так как мы подписаны получается на get метод и каждый раз когда значение обновляется происходит то что происходит в subscribe. Выходит то что он читает из бд значение потом в сабсрайбе делает вычисление , записывает опять в бд, и так как мы подписаны на изменение значения, он опять читает занчение , производит вычисление и опять делает апдейт значения и дальше по кругу. Как можно избежать этой цикличности и произвести запись в бд. ?
> subscribe на get метод > в этом subscribe вызываю метод update why
take(n) возьмет n первых объектов и отпишется. В твоем случае take(1) подойдет. Но как по мне, лучше сделать 2 отдельные подписки и 2 отдельных метода.
Обсуждают сегодня