【发布时间】:2017-10-18 09:28:38
【问题描述】:
我正在尝试在我的 Http 服务中构建无限轮询,因为我正在构建一个仪表板之王,它调查来自服务器的数据,这是我几乎可以工作的代码(在我的控制台中,我看到 Json 正在运行,但是它并没有反映我的观点......我想注入我的用户:Observable
const usersURL = 'http://my.super.servor.php'
@Injectable()
export class UserService {
users: Observable<User[]>
constructor (public http:Http) {
this.users = http.get(usersURL)
genre mobile ou autre
.map(res => [res.json()]);
let i = this.users.subscribe(
usersURL => console.log(usersURL),
() => {}, // Here we catch up errors
() => console.log("completed!") // Here we catch up if its completed
)
// Here's where I'm trying to do the polling every 5 secondes
let tick$ = Observable.interval(5000);
let response$ =
tick$
.flatMap(() => http.get(usersURL))
.map(res => [res.json()]);
let stockPoller = response$.subscribe(res => console.log(res));
}
【问题讨论】:
-
将你的 http 调用移动到一个方法中并返回 observable。然后将服务注入到组件中,调用新方法并订阅结果。就这样
标签: javascript angular long-polling rxjs5 angular-http