Javascript TypeError:无法读取属性';args';用茉莉花做间谍的时候
我将跟随《主干基础知识》一书()中的教程,并尝试创建一个间谍来测试验证 下面的代码在my SpecRunner中产生以下错误: 'TypeError:无法读取未定义的属性'args'Javascript TypeError:无法读取属性';args';用茉莉花做间谍的时候,javascript,backbone.js,tdd,jasmine,bdd,Javascript,Backbone.js,Tdd,Jasmine,Bdd,我将跟随《主干基础知识》一书()中的教程,并尝试创建一个间谍来测试验证 下面的代码在my SpecRunner中产生以下错误: 'TypeError:无法读取未定义的属性'args' it('Can contain custom validation rules, and will trigger an invalid event on failed validation.', function() { var errorCallback = jasmine.createSpy('-i
it('Can contain custom validation rules, and will trigger an invalid event on failed validation.', function() {
var errorCallback = jasmine.createSpy('-invalid event callback-');
var todo = new Todo();
todo.on('invalid', errorCallback);
todo.set({done:'a non-boolean value'});
var errorArgs = errorCallback.mostRecentCall.args;
expect(errorArgs).toBeDefined();
expect(errorArgs[0]).toBe(todo);
expect(errorArgs[1]).toBe('Todo.done must be a boolean value.');
});
我到处找,结果都很小。我还尝试替换:
var errorArgs = errorCallback.mostRecentCall.args;
与:
这似乎就是jasmine文档中使用的内容,但仍然存在相同的问题
非常感谢您的帮助 您链接到的教程正在使用Jasmine 1.3,您可能正在使用。间谍的语法发生了很大的变化 你要找的线路是
var errorArgs = errorCallback.calls.mostRecent().args;
或者
var errorArgs = errorCallback.calls.argsFor(0);
您链接到的教程正在使用Jasmine 1.3,您可能正在使用。间谍的语法发生了很大的变化 你要找的线路是
var errorArgs = errorCallback.calls.mostRecent().args;
或者
var errorArgs = errorCallback.calls.argsFor(0);
谢谢你,埃里克。今晚回家后我会查一下。谢谢埃里克。我今天晚上回家后会检查一下。