Tôi vừa cài đặt AngularJS 1.2.24 và tôi đang cố gắng kiểm tra chỉ thị của mình. Mã này trông giống như sau:
describe('scenarios', function() {
var scope, compile;
beforeEach(module("app"));
beforeEach(module("src/widgets/tt-header/header.html"));
beforeEach(inject(function ($compile, $rootScope) {
scope = $rootScope.$new();
compile = $compile;
}));
function directive() {
var el = angular.element('<div tt-header />');
compile(el)(scope);
scope.$digest();
return el;
}
it('should load the directive', function() {
var el = directive();
expect(el).not.toBe(undefined);
});
});
Sau đó, khi tôi chạy thử nghiệm tôi nhận được thông báo sau trong khi thì hành phạm vi $ tiêu hóa():.
PhantomJS 1.9.7 (Mac OS X) tt-header scenarios should load the tt-header directive FAILED
TypeError: 'undefined' is not a function (evaluating '$browser.$$checkUrlChange()')
at /Users/alansouza/tt-workspace/tt-app-angular/vendor/angular/angular.js:12502
at ttHeader (/Users/alansouza/tt-workspace/tt-app-angular/tests/widgets/tt-header/tt-header-specs.js:20)
at /Users/alansouza/tt-workspace/tt-app-angular/tests/widgets/tt-header/tt-header-specs.js:27
Nó có vẻ là một cái gì đó có liên quan để thay đổi url trong trình duyệt. Tôi so sánh với các phiên bản trước và điều này có vẻ là một mã mới đối với tôi.
Tôi đã cố gắng hoàn nguyên về phiên bản 1.2.21 trước đó và mọi thứ hoạt động tốt.
Tôi có làm gì sai ở đây không?
Vui lòng đăng thông báo Lỗi chính xác và theo dõi ngăn xếp. – gkalpak
Điều này có vẻ là một lỗi với 1.2.24. Tôi hạ cấp xuống 1.2.23 và nó hoạt động chính xác trở lại. –
Theo yêu cầu, tôi đã thêm dấu vết ngăn xếp đầy đủ ... –