2014-03-05 58 views
1

Unit Testing Directive Scope,我应该能够访问指令的范围变量在单元测试是这样的:

expect(element.scope().clicked).toBe(true); 

即在测试看起来像这样...

it("should respond to a click", function() { 
    browserTrigger(element, "click"); 
    expect(element.scope().clicked).toBe(true); 
} 

然而,在我自己的实验,我不得不这样做:

expect(element.scope().$$childHead.clicked).toBe(true); 

(同样,如果我没有使用隔离范围,那么它的工作没有$$childHead。)

为什么(以及何时)我必须使用$$ childHead?

回答

1

这是为了做到这一点:

expect(element.isolateScope().clicked).toBe(true);