Angular 11 个模板解析错误:不是已知元素
Angular 11 template parse errors : not a known element
如标题,我正在尝试在当前组件中使用另一个相同级别的组件,但遇到了这个错误。
DevTools 给了我两个解决方案
- 如果 'message-block' 是一个 Angular 组件,则验证它是该模块的一部分。
- 如果 'message-block' 是 Web 组件,则将 'CUSTOM_ELEMENT_SCHEMA' 添加到该组件的“@NgModule.schema”以禁止显示此消息。
文件夹
- 块
- 客户资料
- profileBlock
- 个人资料信息
- profileInfo.html
- profileInfo.ts
- profileBlock.module.ts
- 消息块
- block.modules.ts
模块
这是我的块模块
@NgModel({
imports:[...otherModule],
declarations:[messageBlockComponents],
export:[messageBlockComponents]
})
- 我检查过消息块组件的选择器名称是否正确
<message-block></message-block>
错误发生在profileInfo.html。我在block moodule中声明了消息块,它是一个父模块,所以我没有添加任何声明在 profileBlock.modules.
问题
如何将消息块添加到 profileInfo 组件中?
原因
导致这个错误的原因是同层组件不能相互识别,除非它们有自己的模块来管理它们。
解决方案
所以我为消息创建了一个模块-block.Let block.module 和 profileBlock.module 都导入了消息块模块。
如标题,我正在尝试在当前组件中使用另一个相同级别的组件,但遇到了这个错误。
DevTools 给了我两个解决方案
- 如果 'message-block' 是一个 Angular 组件,则验证它是该模块的一部分。
- 如果 'message-block' 是 Web 组件,则将 'CUSTOM_ELEMENT_SCHEMA' 添加到该组件的“@NgModule.schema”以禁止显示此消息。
文件夹
- 块
- 客户资料
- profileBlock
- 个人资料信息
- profileInfo.html
- profileInfo.ts
- profileBlock.module.ts
- 个人资料信息
- profileBlock
- 消息块
- 客户资料
- block.modules.ts
模块
这是我的块模块
@NgModel({
imports:[...otherModule],
declarations:[messageBlockComponents],
export:[messageBlockComponents]
})
- 我检查过消息块组件的选择器名称是否正确
<message-block></message-block>
错误发生在profileInfo.html。我在block moodule中声明了消息块,它是一个父模块,所以我没有添加任何声明在 profileBlock.modules.
问题
如何将消息块添加到 profileInfo 组件中?
原因
导致这个错误的原因是同层组件不能相互识别,除非它们有自己的模块来管理它们。
解决方案
所以我为消息创建了一个模块-block.Let block.module 和 profileBlock.module 都导入了消息块模块。