![](/img/trans.png)
[英]How to update Html table in child component when I click the button from parent component in Angular 4?
[英]How do I access elements of child component from parent for testing Angular 2?
我正在尝试从父组件中获取子组件的元素,以在Karma-Jasmine中进行测试。 我有一个带有联系表单的组件(父),该组件又具有一个用户名和密码component(child),用于验证表单和显示错误消息。 现在,我需要从父组件测试子组件的警报消息。 我尝试了以下
let parent = fixture.debugElement.query(By.css('input-component'));
let child = parent.query(By.css('alert'));
但是我没有得到任何结果。 它只是返回父HTML。 我在这里找到了用于端到端测试的解决方案,但不适用于单元测试。
我该如何完成任务。 这是解释我的情况的傻瓜 。
我找到了解决问题的方法。 似乎在测试时未启用属性“脏”和“接触”。 因此,我通过添加以下代码在重置或修改表单值之后手动启用了它们...
component.parentForm.controls['childUser'].markAsDirty();
component.parentForm.controls['childUser'].markAsTouched();
我不知道这是否是使它正常工作的正确方法。 但是我找不到其他解决方案。 谢谢。 希望这对某人有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.