你能解释一下这条线的工作原理:
beforeEach(module(‘phonecatApp’));
beforeEach()期望在每次测试之前调用回调函数.
module()返回一个angular.Module对象.
beforeEach()对一个对象做了什么?
最佳答案 如果您查看
angular.mock.module
的源代码,您可以看到它返回函数或函数的结果,具体取决于规范是否正在运行:
window.module = angular.mock.module = function() {
var moduleFns = Array.prototype.slice.call(arguments, 0);
return isSpecRunning() ? workFn() : workFn;
/////////////////////
function workFn() {
...
当调用beforeEach时,我怀疑这被视为不在规范期间,因此该函数返回一个回调,该回调在测试运行程序稍后调用使用beforeEach注册的回调时运行.
此外,我没有看到记录,或在源中,它实际上返回一个模块对象.它显然使用依赖注入系统注册了一个模块.