2014-03-05 88 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);