首页 > 解决方案 > DOM 事件不会在 Angular 和 Jasmine 测试中分派

问题描述

我有一张图片卡,并且 Mouseenter 事件组件应该添加到图片描述'.show'类{可见性:可见}(默认{可见性:隐藏})

我的测试:

const imageCard = fixture.debugElement.query(By.css('.images-card'));
imageCard.triggerEventHandler('mouseenter', null);

fixture.detectChanges();

const description = fixture.debugElement.query(By.css('.image-description'));
const descriptionNative: HTMLDivElement = description.nativeElement;
const styles = window.getComputedStyle(descriptionNative);

expect(styles.visibility).toBe('visible');

看起来它不起作用,图像描述仍然隐藏。

注意:1.我也尝试过像这样调度事件:

imageCard.nativeElement.dispatchEvent(new MouseEvent('mouseenter'))

结果是一样的。

我错过了什么?

标签: javascriptcssangularunit-testingjasmine

解决方案


推荐阅读