“类型'EventEmitter'不是通用的”角度错误


79

我目前正在关注一个教程,并且该教程正在使用EventEmitter。代码像这样

@Output() ratingClicked: EventEmitter<string> =
        new EventEmitter<string>();

但是Visual Studio代码给了我这些错误:

  1. 类型“ EventEmitter”不是通用的。
  2. 期望0类型参数,但得到1。

即使在有角度的网站中,看起来该代码也是正确的。

我目前正在使用Angular CLI:1.7.4; 节点:8.11.1; 打字稿:2.8.1

Answers:


253

您可能正在使用的node从本地EventEmitternode/index.d.ts

import { EventEmitter } from 'events';

固定

将导入更改为从角度导入:

import { EventEmitter } from '@angular/core';

27

使用Visual Studio Code时,IDE会自动从Node.js导入EventEmitter

import { EventEmitter } from "events";

在这种情况下,您必须手动将其更改为角铁芯模块

import { EventEmitter } from "@angular/core";


0

我在做同样的教程,面临同样的问题。

导入有问题。EventEmitter必须从@angular/core

使用:

import { EventEmitter } from '@angular/core';

这将解决它。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.