Node.js เหตุการณ์
Node.js เหมาะอย่างยิ่งสำหรับแอปพลิเคชันที่ขับเคลื่อนด้วยเหตุการณ์
กิจกรรมใน Node.js
ทุกการกระทำบนคอมพิวเตอร์คือเหตุการณ์ เช่นเดียวกับเมื่อทำการเชื่อมต่อหรือเปิดไฟล์
ออบเจ็กต์ใน Node.js สามารถเริ่มเหตุการณ์ได้ เช่นเดียวกับอ็อบเจ็กต์ readStream ที่เรียกใช้เหตุการณ์เมื่อเปิดและปิดไฟล์:
ตัวอย่าง
var fs = require('fs');
var rs = fs.createReadStream('./demofile.txt');
rs.on('open', function () {
console.log('The file is open');
});
โมดูลเหตุการณ์
Node.js มีโมดูลในตัวที่เรียกว่า "เหตุการณ์" ซึ่งคุณสามารถสร้าง- ยิง- และฟังเหตุการณ์ของคุณเองได้
หากต้องการรวมโมดูลเหตุการณ์ในตัวให้ใช้require()
เมธอด นอกจากนี้ คุณสมบัติและเมธอดของเหตุการณ์ทั้งหมดยังเป็นอินสแตนซ์ของอ็อบเจ็กต์ EventEmitter เพื่อให้สามารถเข้าถึงคุณสมบัติและวิธีการเหล่านี้ ให้สร้างวัตถุ EventEmitter:
var events = require('events');
var eventEmitter = new events.EventEmitter();
วัตถุ EventEmitter
คุณสามารถกำหนดตัวจัดการเหตุการณ์ให้กับเหตุการณ์ของคุณเองด้วยวัตถุ EventEmitter
ในตัวอย่างด้านล่าง เราได้สร้างฟังก์ชันที่จะดำเนินการเมื่อมีเหตุการณ์ "scream" เกิดขึ้น
ในการเริ่มเหตุการณ์ ให้ใช้emit()
วิธีการ
ตัวอย่าง
var events = require('events');
var eventEmitter = new events.EventEmitter();
//Create an event handler:
var myEventHandler = function () {
console.log('I hear a scream!');
}
//Assign the event handler to an
event:
eventEmitter.on('scream', myEventHandler);
//Fire the
'scream' event:
eventEmitter.emit('scream');