tôi đang cố gắng để có được những EventEmitter trong lớp chạy của riêng tôi trong ES6:Sử dụng EventEmitter trong lớp ES6
"use strict";
const EventEmitter = require('events');
class Client extends EventEmitter{
constructor(token, client_id, client_secret, redirect_uri, code){
super();
this.token = token;
this.client_id = client_id;
this.client_secret = client_secret;
this.redirect_uri = redirect_uri;
this.code = code;
}
eventTest(){
this.emit("event");
console.log(this.token);
}
}
let testClient = new Client(1,2,3,4,5);
testClient.eventTest();
testClient.on('event',() => {console.log('triggerd!')});
nhưng sự kiện này đang làm gì ^^
Without ES6 tôi đã nhận nó làm việc với điều này mã:
var util = require('util');
var EventEmitter = require('events').EventEmitter;
var Client = function(credentials) {
var self = this;
function eventTest() {
self.emit('event');
}
};
util.inherits(Client, EventEmitter);
Có ai biết cách thực hiện ngay trong ES6 không?
Không nên là 'const EventEmitter = require ('events'). EventEmitter;'? –
[đây là một loạt các ví dụ hay] (https://gist.github.com/gdi2290/bec4889e0a5785cae2a9), hoặc cụ thể [this one] (https://gist.github.com/gdi2290/bec4889e0a5785cae2a9#file-pseudo- classic-es6-js) – nem035
@ nem035 Tôi đã tìm thấy bộ sưu tập, nhưng tôi không hiểu cách tạo sự kiện. Các ví dụ chỉ cho thấy cách tạo một hàm bên trong một lớp:/ – Alaska