このエラーに関する質問を見て、解決策を見つけられませんでした。テンプレート解析エラー: 'div'の既知のプロパティではないため、DIRECTIVEにバインドできません。
私はハイライト・ディレクティブを持っており、入力はindex
です。このディレクティブは、私が使用しているモジュールで宣言するときに機能しますが、いくつかのモジュールで使用したいので、宣言を削除し、エラーをインポートするルートモジュールの中に入れます。私はエラーを取得するときには、次のとおりです。
Error: Template parse errors:
Can't bind to 'index' since it isn't a known property of 'div'. ("
<div class="read row"
appListHighlight
[ERROR ->][index]="index"
>
<div class="col"></div>
"): ng:///NetworkModule/[email protected]:20
マイディレクティブ:
import { Directive, Input, Renderer2, ElementRef, HostBinding, OnInit } from '@angular/core';
@Directive({
selector: '[appListHighlight]'
})
export class ListHighlightDirective implements OnInit{
@HostBinding('style.backgroundColor') backgroundColor = 'transparent';
@Input() index: string;
constructor() {}
ngOnInit() {
console.log('APP', this.index);
if (+this.index % 2 === 0) {
this.backgroundColor = 'rgba(128, 128, 128, 0.08)'
}
}
}
私のhtml:
<div class="read row"
appListHighlight
[index]="index"
>
HTMLがインポートされ、私のネットワークモジュール、内部のコンポーネントの一部でありますそのような私のルートモジュールに
import { ListHighlightDirective } from './shared/list-highlight.directive';
import { NetworkModule } from './network/network.module';
declarations: [
AppComponent,
ListHighlightDirective
],
何が起こっているのですか?ディレクティブがnetworkModuleにインポートされ、ルートモジュールはインポートされていないと、これはなぜ機能しますか?ルートモジュールは、インポートするアプリケーションのすべてをコンパイルしないので、すべてのインポートが組み込まれますか?
--------------------______更新日_____------------------------
共有モジュールを作成してインポートしましたが、同じエラーが発生しています。私のモジュールは次のようになります。
import { ListHighlightDirective } from './list-highlight.directive';
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
@NgModule({
declarations: [
ListHighlightDirective
],
imports: [
CommonModule
]
})
export class SharedModule { }
あなたAppModuleでインポート 'FormsModule' – Faisal
私は共有モジュールにこれを追加 – FussinHussin
をFormsModuleをインポート同じエラー。私は共有モジュールをインポートしました。次のようになります。 import {ListHighlightDirective} from './list-highlight.directive'; '{角度/共通}'から{CommonModule}をインポートします。 '@ angular/core'から{NgModule}をインポートします。 @NgModule({ 宣言:[ ListHighlightDirective ]、 輸入:[ CommonModule ] }) 輸出クラスSharedModule {}上で灰色の線を1として – FussinHussin