Karma和Socket.io(TypeError:this.manager.on不是函数)

时间:2018-06-26 19:48:50

标签: socket.io phantomjs gulp-karma

我正在尝试使用PhantomJS和Karma在构建服务器上运行无头测试。构建服务器不使用Chrome,因此它们需要没有头绪。我之前从未与Karma合作过,所以我不喜欢使用教程来习惯它。我在使用此特定方法时遇到了错误:

this.manager.on('set:transports', function (key, value) {
  delete self.cache['/socket.io.js'];
   Object.keys(self.cache).forEach(function (key) {
     if (bundle.test(key)) {
       delete self.cache[key];
     }
   });
});

我的构建失败并显示以下消息:

  

TypeError:this.manager.on不是函数       在Static.init(C:\ Users ******* \ Desktop \ karma2 \ node_modules \ karma \ node_modules \ socket.io \ lib \ static.js:148:16)       在新的静态(C:\ Users ******* \ Desktop \ karma2 \ node_modules \ karma \ node_modules \ socket.io \ lib \ static.js:65:8)       在新的Manager(C:\ Users ******* \ Desktop \ karma2 \ node_modules \ karma \ node_modules \ socket.io \ lib \ manager.js:68:15)       在Object.exports.listen(C:\ Users ******* \ Desktop \ karma2 \ node_modules \ karma \ node_modules \ socket.io \ lib \ socket.io.js:78:10)       在createSocketIoServer(C:\ Users ******* \ Desktop \ karma2 \ node_modules \ karma \ lib \ server.js:255:19)       在Array.invoke(C:\ Users ******* \ Desktop \ karma2 \ node_modules \ di \ lib \ injector.js:75:15)       到达时(C:\ Users ******* \ Desktop \ karma2 \ node_modules \ di \ lib \ injector.js:48:43)       在C:\ Users ******* \ Desktop \ karma2 \ node_modules \ di \ lib \ injector.js:71:14       在Array.map()       在Injector.invoke(C:\ Users ******* \ Desktop \ karma2 \ node_modules \ di \ lib \ injector.js:70:31)   npm ERR!测试失败。有关更多详细信息,请参见上文。

经理在这里声明:

/**
* Static constructor
*
* @api public
*/

function Static (manager) {
  this.manager = manager;
  this.cache = {};
  this.paths = {};

  this.init();
}

我试图找到有关manager的文档,但似乎不存在。甚至在socket.io GitHub中,Manger所来自的文件static.js。不存在。使用npm install socket.io更新socket.io的任何尝试都不会改变任何东西。

0 个答案:

没有答案