Я пытаюсь выполнить тестирование тестовой инструкции, которая была ранее написана, и для моего первого модульного теста все, что я хочу сделать, это проверить переменную внутри области действия директивы.директива по единичному тестированию и isolScope не является функцией
Однако каждый раз, когда я пытаюсь запустить метод isolatedScope()
на моем элементе html, я получаю сообщение об ошибке elem.isolatedScope is not a function
.
Одна из странных вещей, когда я установил точку останова только после того, как я запустил $compile
на свой элемент, с консоли javascript, я могу напечатать директивы изолированной области.
Попытка установить isolatedScope
переменной, как показано ниже, всегда будет приводить к ошибке elem.isolatedScope is not a function
.
describe('directive: wikis', function() {
var $scope, elem, isolated;
beforeEach(module('app'));
beforeEach(inject(function(_$compile_, _$rootScope_){
$scope = _$rootScope_.$new();
elem = angular.element('<wikis></wikis>');
elem = _$compile_(elem)($scope);
isolated = elem.isolatedScope()
isolated.$digest();
}));
describe('$scope should be defined', function(){
it('data should be empty object', function() {
expect(isolated.data).to.be.null;
});
});
});
Любая идея о том, что я могу делать неправильно?
isolateScope был устаревшим (угловым 1.3?), Поэтому он не будет работать, если вы не используете раннюю версию. – rrd