CUSTOM_ELEMENTS_SCHEMA 错误只是有时出现

CUSTOM_ELEMENTS_SCHEMA error only shows sometimes

我从 Angular 8 更新到 Angular 9,运行 应用程序向我显示错误:

error NG8002: Can't bind to 'text' since it isn't a known property of 'app-custom-message'.
    1. If 'app-custom-message' is an Angular component and it has 'text' input, then verify that 
it is part of this module.

我以前没有那个错误。

代码如下:

Page.component.ts

<app-custom-message [icon]='"icon.png"' [text]="'the message'"><app-custom-message>
<app-custom-footer></app-custom-footer>

错误只显示在custom-message中,我想可能是因为CUSTOM-MESSAGE有属性,所以把属性去掉,错误还在显示,奇怪的是在中没有显示自定义页脚。

自定义-Message.ts

import { Component, OnInit, Input } from '@angular/core';
@Component({
  selector: 'app-custom-message',
  templateUrl: './message.component.html',
  styleUrls: ['./message.component.scss']
})
export class MessageComponent implements OnInit {
  @Input() 'text';
  @Input() 'url' = null;
  @Input() 'icon' = null;
  closed = false;
  constructor() { }
  ngOnInit() {  }
}

我使用延迟加载,custom-message和custom-footer组件在pageModule域外的共享文件夹中,结构如下:

-PageFolder
--PageComponent
--PageModule
-Shared
--CustomMessage
--CustomFooter

应用程序仍在运行,这个错误困扰着我,我知道解决方案是在 PageModule 中导入 CUSTOM_ELEMENTS_SCHEMA,但这可以防止将来在滥用组件名称时检测到错误.

像这样修改@Input

@Input() text;
@Input() url = null;
@Input() icon = null;