angular 2和socket.io

时间:2017-07-05 17:39:33

标签: angular sockets

我最近开始用angular2编程(或现在是4版本),无论如何,我掌握了所有的功能。我最近遇到的问题是使用socket.io实现套接字。

所以基本上我有一个简单的 nodejs express 服务器监听套接字连接,这很容易。

我使用angulars-cli终端 ng 创建一个简单的应用程序。只需 ng new application-name 即可。它创建了一个最小的工作角度应用。现在的问题是,如何将 socket.io-client 添加到应用程序中。我已经学过很多教程,但它们都有不同的方式。许多教程都使用 systemjs 模块加载器,但是当我使用 ng 创建样板时,没有名称为 systemjs 的文件。

所以我的问题是如何告诉angular将socket.io加载到应用程序中。 Ofcourse import * as io从'socket.io-client'进入客户端是不够的,因为我已经到了。我尝试创建 @Injectable(),然后将其作为提供程序添加到approot模块中,但这似乎不起作用。

有人可以详细说明吗?

非常感谢

1 个答案:

答案 0 :(得分:0)

这里有更多细节会很有帮助。你做了什么@Injectable()?您自己的服务之一,还是他们的服务之一?并在以下声明中提供有关您所指的失败的详细信息:

  

当然import * as io from 'socket.io'进入客户端是不够的,正如我所经历的那样。

如果您只想在页面上使用Angular CLI添加脚本,可以使用apps - > scriptsdocumentation)中的.angular-cli.json数组。

但是,你很可能会对这样的模块有更好的运气:https://www.npmjs.com/package/ng2-socket-io。该包的源代码也可以作为如何单独导入socket.io的示例。只需导入包并在您的应用程序中使用它,Angular / webpack编译步骤将在最终包中包含库。

如果您继续看到问题,那么您需要提供更多详细信息。