问题描述
我在这样的单元测试中添加了keyboardEvent,但是它不起作用。在这里,我希望应该从同级按钮中删除“键”事件禁用属性。
指令:
constructor(private element: ElementRef) {}
@HostListener('document:keyup',['$event']) onKeyUp(e: any) {
const hostElem = this.element.nativeElement;
if (hostElem.classList.contains('done')) {
const nextElemChildren = hostElem.nextElementSibling.children[0];
nextElemChildren.disabled = false;
}
}
}
规格:
@Component({
selector: 'stepnav-integration',template: `
<nav class="nav done" stepNav>
<button class="btn"></button>
</nav>
<nav class="nav" stepNav>
<button class="btn" disabled="disabled"></button>
</nav>
<input type="text" />
`
})
it('test keyup event',done => {
const event = new KeyboardEvent('keyup',{
key: 'Enter'
});
inputElement.nativeElement.dispatchEvent(event);
fixture.detectChanges();
expect(
navElement.nativeElement.nextElementSibling.children[0].disabled
).toBeFalse();
done();
});
我不确定我在哪里犯了错误。所以我正在寻找帮助。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)