离子自定义指令被Angular忽略

罗伯托·佩特里里(Roberto Petrilli)

我在ionic中创建了一个自定义指令

ionic g directive directives/time-value

我的代码是

import { Directive, OnInit, Input, HostListener } from '@angular/core';

@Directive({
    selector: '[appTimeValue]',
})
export class TimeValueDirective implements OnInit{

    @Input('appTimeValue') myStyles: any;

    constructor() { 
      console.log("I'm here");
    }
    ngOnInit(): void {
      console.log("I'm here");
  
    }
}

然后我尝试使用指令

<ion-input type="text" name="fineColazione" [(ngModel)]="fineColazione" appTimeValue></ion-input>

爱奥尼亚无视我的指令。

CLI在模块声明中添加了指令

@NgModule({
  declarations: [
    AppComponent,
    TimeValueDirective,
  ],
  entryComponents: [],
  imports: [
    CommonModule,
    BrowserModule, 
    IonicModule.forRoot(), 
    AppRoutingModule,
    FormsModule
  ],
  providers: [{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy }],
  bootstrap: [AppComponent],
})
export class AppModule {}

如何使该指令起作用?

安德烈

应该在与包含使用该指令的组件的模块相同的模块中声明TimeValueDirective。另外,将SharedModule与应用程序内的所有可重用组件/指令/管道一起使用,并将此模块导入任何地方也是一个好习惯。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章