首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AngularJS量角器和Socket.IO

AngularJS量角器和Socket.IO
EN

Stack Overflow用户
提问于 2013-11-05 10:26:08
回答 1查看 658关注 0票数 0

在我现有的angular应用程序中设置E2E测试时,因为我在应用程序中使用socket.io,所以启动时遇到了问题。Protractor找不到通常由节点模块提供的socket.io文件,因为它不是我个人代码的一部分。

我得到了一个错误:

代码语言:javascript
复制
UnknownError: Error Message => 'Can't find variable: io'

在角度方面:

代码语言:javascript
复制
angular.module('socket.io', []).factory(function($rootScope) {
  var socket = io.connect(); // I believe the error is being thrown from here
  return {
    on: function (eventName, callback) {
      socket.on(eventName, function () {...});
    },
    emit: function (eventName, data, callback) {
      socket.emit(eventName, data, function () {...});
    }
  };
});

我相信这是因为它通常由node模块提供服务:

代码语言:javascript
复制
<script type="text/javascript" src='/socket.io/socket.io.js'></script>

vs上面显示的我的socket.io工厂

代码语言:javascript
复制
<script type="text/javascript" src='js/services/socket-service.js'></script>

有没有办法在不将socket.io.js文件复制到客户机代码库的情况下解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2013-11-05 10:46:11

确保在socket-service.js之前包含文件socket.io.js。您可以手动执行此操作,也可以使用诸如requirejs (http://www.requirejs.org)之类的模块加载器

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19780948

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档