"प्रकार 'EventEmitter' सामान्य नहीं है" कोणीय में ERROR


80

मैं वर्तमान में एक ट्यूटोरियल का अनुसरण कर रहा हूं और ट्यूटोरियल इसका उपयोग कर रहा है EventEmitter। कोड इस तरह से होता है

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

लेकिन यह दृश्य स्टूडियो कोड मुझे ये त्रुटियां देता है:

  1. टाइप 'EventEmitter' सामान्य नहीं है।
  2. अपेक्षित 0 प्रकार के तर्क, लेकिन 1 मिला।

यहां तक ​​कि कोणीय वेबसाइट में यह दिखता है कि कोड सही है।

मैं वर्तमान में कोणीय सीएलआई का उपयोग कर रहा हूं: 1.7.4; नोड: 8.11.1; टाइपस्क्रिप्ट: 2.8.1

जवाबों:


267

आप शायद का उपयोग कर रहे nodeसे देशी EventEmitter node/index.d.tsयानी

import { EventEmitter } from 'events';

ठीक कर

कोणीय से आयात को बदलें:

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

27

विजुअल स्टूडियो कोड का उपयोग करते समय, IDE स्वतः Node.js से EventEmitter आयात करता है

import { EventEmitter } from "events";

इस मामले में आपको इसे मैन्युअल रूप से कोणीय कोर मॉड्यूल में बदलना होगा

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

0

दृश्य स्टूडियो कोड में जब आपका उपयोगकर्ता घटक के अपने HTML फ़ाइल से ईवेंट क्लिक इवेंट को सुनने का प्रयास करता है

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

यह स्वचालित रूप से import { EventEmitter } from '@angular/event'इसके बजाय घटक को आयात करता है import { EventEmitter } from '@angular/core'

संसाधन: https://ultimatecourses.com/blog/component-events-event-emitter-output-angular-2


0

मैं एक ही ट्यूटोरियल कर रहा था और उसी मुद्दे का सामना कर रहा था।

यह एक आयात के साथ एक समस्या है। EventEmitterसे आयात किया जाना चाहिए@angular/core

उपयोग:

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

इसे ठीक कर देंगे।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.