如何在angular 2和ionic 2中创建监听器



我想创建侦听器来侦听web服务响应。我做了聊天应用程序。在那简单地调用我的web服务和工作完成后,它给出了响应。问题是这里没有时间修复响应,所以我认为我应该实现侦听器侦听web服务。有没有办法在ionic 2和angular 2中创建监听器

在JavaScript和许多其他语言中,您将使用异步编程处理调用web服务的响应。

要点是提供一个回调方法来处理响应。

function handleResponse(response) {
    console.log(response);
}
callService(data, handleResponse, handleError);

这与同步编程非常不同,在同步编程中你会做如下的事情:

var response = callService(data);
console.log(response);
在异步编程中,许多回调函数可以相互依赖。这叫做回调地狱。

JavaScript中更现代的方法是使用promise。promise是一个具有订阅方法的对象,用于在promise被完成时订阅。

callService(data).then(handleResponse);
现在在Angular2中,用于调用web服务的Http服务可以返回一个promise或者一个Rxjs对象。

Rxjs就像一个承诺。如果您熟悉Pub/Sub模式,可以将Rxjs想象成Pub/Sub模式,但它是应用程序内部的。另一种概念化Rxjs的方法是作为流的承诺。Promise可以被解析一次,而Rxjs对象可以被持续解析。

请将代码发布到你的服务和调用它的组件中。我们可以帮助你。

我不确定Http(我假设当你说web service你指的是Http Web服务)是聊天应用程序的适当协议。你可能想看看WebSockets或WebRTC。

最新更新