このエラーは、ngSkipHydration 属性が適切でないDOMノードに適用された場合に発生します。ngSkipHydration 属性は、テンプレートまたはホストバインディングを介して直接、コンポーネントホストノードのみに適用できます。他のDOMノードには適用できず、このエラーが発生する以外、効果はありません。
水和の詳細については、このガイドをご覧ください。
次の例では、エラーが発生します。
例 1
この例では、ngSkipHydration 属性は、ディレクティブのホストバインディングを使用して <div> に適用されています。<div> はコンポーネントホストノードとして機能しないため、Angularはエラーをスローします。
@Directive({ selector: '[dir]', host: {ngSkipHydration: 'true'},})class Dir {}@Component({ selector: 'app', imports: [Dir], template: ` <div dir></div> `,})class SimpleComponent {}
例 2
この例では、ngSkipHydration はテンプレートを介して属性として <div> に適用されています。
<div> はコンポーネントホストノードとして機能しないため、Angularはエラーをスローします。
@Component({ selector: 'app', template: ` <div ngSkipHydration></div> `,})class SimpleComponent {}
エラーのデバッグ
不正なDOMノードから ngSkipHydration 属性を削除します。または、ngSkipHydration 属性をテンプレートまたはホストバインディングを介してコンポーネントホストノードに移動します。