指令不适用于申请

时间:2017-01-15 12:34:16

标签: javascript angular

我无法弄清楚如何在我的应用程序中使用指令。我想将一个指令应用于一个组件,这是它最简单的形式。

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渲染很好,是一个包含在模块中的组件。另外,我无法在指令中触发调试器或警报 - 可能是模板绑定的问题?

1 个答案:

答案 0 :(得分:3)

在您的FirstDirective中声明HomeModule,应该处理它。在此,我假设您的HomeComponenthomemodule的一部分。

尝试将自己从模块中删除,并且它没有产生任何错误但也没有工作。