我正试图在angular2中实现我自己的WebSockets使用方式,我正面临一个非常愚蠢的问题。
我定义了一个服务,它有一个方法,通过获取一个url和两个函数,返回一个WebSocket对象,一个用作“onmessage”,一个用作“onerror”(我硬编码了“onopen”和“onclose”,因为它们不会因组件而异):
@Injectable()
export class WsService {
createWebSocket(url: string, onMessage: (e: Event) => any, onError: (e: Event) => any ): WebSocket {
let ws = new WebSocket(url);
ws.onopen = function(evt: Event) {
console.log("Connected!");
}
ws.onclose = function(evt: Event) {
console.log("Disconnected!");
}
ws.onmessage = onMessage;
ws.onerror = onError;
return ws;
}
}
然后在我的appComponent中,我实例化了一个WebSocket对象,如下所示:
ngOnInit(){
this.ws = this._ws.createWebSocket("ws://localhost:63562", this.on_msg, this.on_err);
}
on_msg(e: Event) {
this.blah = e["data"];
}
on_err(e: Event) {
console.log(e);
}
现在的问题是,尽管“on_msg”函数是在AppComponent中定义的,但它将自己视为WebSocket对象的一部分,因此它不能访问和操作AppComponent中定义的变量。
我该怎么办?
使用一个已经制作好的库,比如这个:https://www.npmjs.com/package/angular2-websocket-service
它将利用您能找到的错误,并且通常基于最佳实践...
[edit]RxJS也有类似的功能:
https://github.com/ReactiveX/rxjs/blob/master/src/observable/dom/WebSocketSubject.ts
我对Angular2和打字是新手。我试图从我的类中的构造函数获得对@input的访问权。一个服务是从构造函数内部调用的,我需要给它传递一个参数。
我是NodeJS的新手。假设我有一个用Golang的websocket包实现的echo服务器: nodejs客户机代码应该是什么样子?
我是K8s的新手“需要帮助” 现在的问题是。- 如何在k8s AWS中旋转私人容器服务,这些服务是私人的,我只能访问?
问题内容: 如果我有类似的东西 我想从我拥有的地方访问,该怎么办? 问题答案: 推荐用于16.3之前的React版本 如果无法避免,那么从React文档中提取的建议模式将是: 该 家长 转发绑定到一个功能道具 家长 。当呼叫作出反应的 儿童的 道具也将分配 孩子的 给 父母的 财产。 建议用于React> = 16.3 引用转发是一种选择加入功能,它使某些组件可以接收它们收到的引用,并将其进一步向
Hyperf 提供了对 WebSocket Server 的封装,可基于 hyperf/websocket-server 组件快速搭建一个 WebSocket 应用。 安装 composer require hyperf/websocket-server 配置 Server 修改 config/autoload/server.php,增加以下配置。 <?php 'servers' => [
我在react native中有一个搜索栏组件,它在父组件中导入, SearchBar子组件具有以下元素: 是否可以访问此子组件在其中导入的父组件中的状态?提前感谢你的帮助
我正在尝试使用Angular2和Http POST对SOAP web服务进行一个非常简单的调用。如果我使用POSTMAN发布相同的消息,只需将内容类型设置为text/xml即可。 对于Angular2,我得到了以下错误:- SEC7120:原点http://localhost:3004在Access Control Allow Origin标头中找不到 SCRIPT7002: XMLHttpReq
本文向大家介绍如何在子组件中访问父组件的实例?相关面试题,主要包含被问及如何在子组件中访问父组件的实例?时的应答技巧和注意事项,需要的朋友参考一下 vue中如果父组件想调用子组件的方法,可以在子组件中加上ref,然后通过this.$refs.ref.method调用(https://www.cnblogs.com/jin-zhe/p/9523029.html) Vue中子组件调用父组件的方法,这里