我有一些角度服务和一个简单的测试,它测试1方法返回某种类型的实例。
当我使用PhantomJS和Chrome
在WebStorm中运行它时 "browsers": ["PhantomJS", "ChromeCanary"]
所有测试都以chrome传递,但在PhantomJS中会有一些测试通过,但上面提到的测试会产生类型错误。 (不是测试,而是测试中测试的代码)
TypeError: 'undefined' is not a function (evaluating 'this._decorateParent.bind(this)')
<... other info>
当然,我可以嘲笑一些依赖项,它会有所帮助。但我想知道这种行为的原因是什么。
angular.js v1.3.14
karma v0.12.32
PhantomJS v1.9.8
答案 0 :(得分:2)
更新到PhantomJS 2,这是解决此问题的最简单方法。 PhantomJS 1.x是基于4年前的QtWebKit分支,当时不支持Function.prototype.bind
。通常需要一个垫片来使PhantomJS知道这个功能,但这对于业力来说可能很难做到。
如果你想用垫片试试,this one一直对我有效。