我使用了PrimeNG p-dialog。运行该程序时,它工作正常。但是,当我尝试使用“ ng Test”(业力)测试程序时。我收到此错误:
失败:模板解析错误: 无法绑定到“可见”,因为它不是“ p-dialog”的已知属性。 1.如果“ p-dialog”是Angular组件,并且具有“ visible”输入,则请确认它是该模块的一部分。 2.如果“ p-dialog”是Web组件,则将“ CUSTOM_ELEMENTS_SCHEMA”添加到该组件的“ @ NgModule.schemas”以禁止显示此消息。 3.要允许任何属性,请在此组件的“ @ NgModule.schemas”中添加“ NO_ERRORS_SCHEMA”。 (“ ....
这似乎是什么原因?
答案 0 :(得分:0)
您必须告诉Angular您正在使用自定义/第三方组件。 为此,请添加以下内容:
schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA]
进入组件测试的beforeEach
部分。
完整的beforeEach
看起来像这样:
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [YourComponentDeclaration],
schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA]
}).compileComponents();
fixture = TestBed.createComponent(YourComponentDeclaration);
component = fixture.componentInstance;
fixture.detectChanges();
}));