我无法弄清楚如何在我的应用程序中使用指令。我想将一个指令应用于一个组件,这是它最简单的形式。
import {Directive, HostBinding} from '@angular/core';
@Directive({
selector: '[directiveSelector]'
})
export class FirstDirective {
@HostBinding() innerText = 'not working';
}
...
import {Component} from '@angular/core';
@Component({
selector: 'home',
template: `
<h1 directiveSelector>Test</h1>`
})
export class HomeComponent {
}
...
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { HomeModule } from "./home/home.module";
import { FirstDirective } from './directives/first.directive';
@NgModule({
imports: [
BrowserModule,
HomeModule
],
declarations: [
AppComponent,
FirstDirective
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
有谁知道我在这里缺少什么? Home渲染很好,是一个包含在模块中的组件。另外,我无法在指令中触发调试器或警报 - 可能是模板绑定的问题?
答案 0 :(得分:3)
在您的FirstDirective
中声明HomeModule
,应该处理它。在此,我假设您的HomeComponent
是homemodule
的一部分。
尝试将自己从模块中删除,并且它没有产生任何错误但也没有工作。