在MatDialog中使用ngx-color-picker时出现StaticInjectorError

时间:2018-07-24 14:03:52

标签: angular

我有一个使用ngx-color-picker指令的颜色选择器组件。该组件位于模块的entryComponents中,并由MatDialog这样使用。

openDialog() { this.dialog.open(EntryComponent, { width: '600px', autoFocus: false }, ); }

当我尝试利用颜色选择器组件内部的ngx-color-picker的某些功能时,它会抛出StaticInjectorError

当我使用没有对话框的组件时,只是在一个简单的组件中,该组件不在模块的entryComponent中-一切正常。

要重现该问题,请检查此Stackblitz项目https://stackblitz.com/edit/angular-jxkwq2

  1. 按下Open dialog按钮
  2. 单击黑色矩形
  3. 检查控制台

为什么会发生以及如何解决?

1 个答案:

答案 0 :(得分:2)

MatDialog中提供AppComponent

@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: [ './app.component.css' ],
  providers : [MatDialog]
})

分叉的Demo