“mat-placeholder”不是已知元素

Raf*_*tiz 2 angular-material angular

我一直在将 Angular Material 8 更新到最新版本 (15),但现在我在输入时遇到下一个错误npm start

“mat-placeholder”不是已知元素:

  1. 如果“mat-placeholder”是 Angular 组件,则验证它是否是该模块的一部分。
  2. 如果“mat-placeholder”是 Web 组件,则将“CUSTOM_ELEMENTS_SCHEMA”添加到该组件的“@NgModule.schemas”以抑制此消息。

我尝试添加CUSTOM_ELEMENTS_SCHEMA但不起作用。

有人知道我必须在这里做什么吗?

我添加CUSTOM_ELEMENTS_SCHEMA到 Angular 模块但它不起作用。我需要迁移它,mat-placeholder但我不知道缺少什么。

我在用着:

<mat-form-field [floatLabel]="'never'">
    <input
        matInput
        readonly
    />
    <mat-placeholder class="date-placeholder"
    >Select date</mat-placeholder
>
</mat-form-field>
Run Code Online (Sandbox Code Playgroud)

D M*_*D M 5

<mat-placeholder>自 Angular Material v6 起已被弃用

<mat-placeholder>元素已弃用,您应该将其用于placeholder占位符和<mat-label>标签。

placeholderAngular Material v15 建议在 input 上设置该属性。此外,绑定到floatLabel 不再接受'never'.

输入floatLabel不再接受'never'floatLabel="never"仅由已被删除的遗留表单字段外观支持。它用于实现行为类似于占位符的浮动标签。如果您需要此行为,请改用placeholderon 属性<input>

<mat-form-field>
    <input
        matInput
        readonly
        placeholder="Select date"
    />
>
</mat-form-field>

Run Code Online (Sandbox Code Playgroud)

您现在可能会遇到此错误,因为 Angular Material v15 是该库针对基于 MDC 的组件的主要重构。

该功能可能通过导入MatLegacyFormFieldModule而不是暂时可用MatFormFieldModule