Angular 类型';ElementRef';不是泛型的

Angular 类型';ElementRef';不是泛型的,angular,angular5,angular2-template,angular2-forms,angular2-services,Angular,Angular5,Angular2 Template,Angular2 Forms,Angular2 Services,我正在处理一个使用Angular 5中的材质组件的项目。我确实更新了我的视觉代码,但我不知道发生了什么。我面临一个问题“类型'ElementRef'不是泛型的。” 从早上起我就一直在这个问题上纠缠不休 这行有错误 \u输入元素:ElementRef; 构造函数(切换组:MatButtonToggleGroup,_changeDetectorRef:changeDetectorRef,_elementRef:elementRef,_focusMonitor:focusMonitor); 我认为问题

我正在处理一个使用Angular 5中的材质组件的项目。我确实更新了我的视觉代码,但我不知道发生了什么。我面临一个问题“类型'ElementRef'不是泛型的。” 从早上起我就一直在这个问题上纠缠不休

这行有错误

\u输入元素:ElementRef;
构造函数(切换组:MatButtonToggleGroup,_changeDetectorRef:changeDetectorRef,_elementRef:elementRef,_focusMonitor:focusMonitor);

我认为问题可能在于,如果您使用的是有角度的材质6,但仍然是有角度的材质5,则会出现此错误。当安装Angular Material 6 RC 12时,它正在寻找Angular 6 Beta 0的对等依赖,而我有Angular 5.x.x版本

解决方案:

  • 将Angular材质降级为Angular的相同主版本(例如v5.x.x)
  • 将Angular和Material升级至最新RC版本,并在边缘享受生活。(例如v6.x.x RCx)

  • PS:他们在2018年ng conf大会上宣布,从版本6开始,Angular的所有版本号,Angular Material和Angular CLI将保持同步,因此了解与之相关的内容和兼容性将变得更加容易,希望您不会再次遇到此问题。

    我在Angular 5应用程序的
    ng引导中遇到与上述相同的错误

    错误 node_modules/@ng bootstrap/ng bootstrap/buttons/radio.d.ts(58,96): 错误TS2315:类型“ElementRef”不是泛型

    我的
    包中有2.1.0版本。json
    作为
    “@ng bootstrap/ng bootstrap”:“^2.1.0”

    似乎2.1.0版在更高版本中受支持,因此决定将我的软件包
    ng bootstrap
    降级为
    “@ng bootstrap/ng bootstrap”:“^1.1.0”


    然后,当我运行
    ngs
    时,一切都正常工作

    你能发布你的完整代码吗?很难说是什么问题,只是看看这个我也有这个问题后,更新角材料6.0.0-rc12。删除了我的node_模块,认为这会有所帮助,但运气不佳。我的错误在node_modules/@angular/material/button toggle/typings/button-toggle.d.ts中,因此我对此无能为力,这非常令人沮丧。按钮切换是他们最近研究的东西,所以很可能这是他们这边的一个新错误。如果您想使用6.0,请尝试其他RC或等待最终版本。注:他们不会在ng conf上发布最终版本的v6,所以您仍需等待一段时间。@Charl与我讨论的问题相同。我也删除了node_模块,并将重新安装,然后问题得到解决。谢谢@bugs issued resolved。实际上,问题是引导文件与材料冲突。我卸载所有包,然后重新安装。我工作得很有魅力!谢谢
    _inputElement: ElementRef<HTMLInputElement>;
    constructor(toggleGroup: MatButtonToggleGroup, _changeDetectorRef: ChangeDetectorRef, _elementRef: ElementRef<HTMLInputElement>, _focusMonitor: FocusMonitor);