ChaiJs不出现在Phantomjs-node injectJS的窗口中

我正在尝试将一些脚本注入到使用phantomjs-node桥加载到PhantomJs中的页面中。

当我将MochaJs注入页面时,我可以评估和window.mocha对象可用。 但是当我注入chaiJs时, window.chai对象不可用。

我已经validation了injectJs调用将true状态传递给了callback,表明脚本被成功注入了,并且我也证实了window.chaiwindow.mocha在注入之后立即可用: http: //plnkr.co/edit/gMzjavJqpNDNeYipmBHG?p=preview

我甚至尝试使用page.includeJs('http://cdnjs.cloudflare.com/ajax/libs/chai/1.10.0/chai.min.js')来确保在cloudflare cdn版本中没有差异我有的npm安装版本,仍然不能正常工作。

我究竟做错了什么?

 page.injectJs(nodeLibDir + '/chai/chai.js', function(){ //page.injectJs(nodeLibDir + '/mocha/mocha.js', function(){ page.evaluate(function(){ //window.callPhantom(window.mocha.constructor.name); window.callPhantom(window.chai.version); }, function(){ console.log('finished'); page.close(); res.json({status: status}); res.end(); }); }); 

原来我正在testing的页面正在使用requireJs来加载一些其他的库,并导致柴不附加到window 。 尝试与不使用requireJs不同的页面,并按预期工作。 SMH。