gpt4 book ai didi

angularjs - 在 Angular 单元测试中按类使用 element.find()

转载 作者:行者123 更新时间:2023-12-03 15:08:43 25 4
gpt4 key购买 nike

运行此测试时,我不断收到错误 Expected undefined to be true.

it('should have the right classes', function() {
// this doesnt work
expect(element.find('.exampleClass').hasClass('ng-hide')).toBe(true);

// but this works
expect(element.find('span').hasClass('ng-hide')).toBe(true);
});

如何使用 jqlite 通过 id 查找元素和 class ?

最佳答案

那是因为 angular-jqlite(与 jquery 本身相比是非常轻量级的库)find仅限于按标签名称查找。您可以使用 element.querySelector(All)并将其包裹在 angular.element 中. IE

  var elm = element[0];
expect(angular.element(elm.querySelector('.exampleClass')).hasClass('ng-hide')).toBe(true);

//Or even
expect(elm.querySelector('.exampleClass.ng-hide')).toBeDefined();

See documentation

find() - Limited to lookups by tag name

关于angularjs - 在 Angular 单元测试中按类使用 element.find(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31258685/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com