Я провел последние несколько дней, изучая наблюдаемые, и начал использовать их в своем приложении Angular. У меня есть приложение Web API, для которого я создаю клиента через NSwagClient в машинописи. У меня есть действие API, которое имеет это в качестве своей подписи:
Task<ActionResult<List<Product>>> GetProducts(int skip, int take)
Клиент API, который у меня есть в машинописи, вызывается так:
_client.GetProductsAsync(0, 10).subscribe(next => {console.log(next)}, err => {}, () => {})
По-моему, когда я спрашиваю о следующей загрузке продуктов (например, пропустить 10, взять 10, а затем пропустить 20, взять 10), мне нужно обновить параметры исходного _client.GetProductsAsync call. Но, похоже, я не могу сделать это, не отменив подписку и не подписавшись на наблюдаемое с новыми параметрами. Кажется, это работает против концепции наблюдаемых в моем сознании как потоков данных, поскольку наблюдаемое должно быть создано один раз, а затем каким-то образом «сработало», чтобы получить больше результатов и передать их Обозревателю.
Как я могу один раз подписаться на API-клиент и выполнить это?