没有NgModel的提供者!在创建结构指令时

时间:2016-07-29 11:58:52

标签: angular angular2-directives

我创建了一个结构指令。这是该类的构造函数。

constructor(private templateRef: TemplateRef<any>, private viewContainer: ViewContainerRef, public query: NgModel) {
    console.log(this.query)
}

如果我删除public query:NgModel,则可以正常使用。如果我添加它会抛出错误。

Error: Uncaught (in promise): No provider for NgModel! (ControlMeta -> NgModel)

这里有什么错误?

我为正常指令做了同样的事情,它工作正常。

1 个答案:

答案 0 :(得分:4)

您必须将NgModel指定为provider

@Directive({ 
  selector: '...',
  providers: [NgModel],
  ...
})