Nodejs:事件机制

UserBean.js

var events = require("events");
var http = require("http");

function UserBean() {
    this.eventEmit = new events.EventEmitter();
    this.zhuce = function (req, res) {
        console.log('注册');
        req['uname'] = 'jack';
        req['pwd'] = 'bb';

        this.eventEmit.emit('zhuceSuc', 'aa', 'bb');//抛出事件消息
    },
        this.login = function (req, res) {
            console.log("登录");
            res.write("用户名:" + req['uname']);
            res.write("密码:" + req['pwd']);
            res.write("登录");
        }
}
module.exports = UserBean;

demo.js

var http = require('http');
var events = require("events");
var UserBean = require('./model/UserBean');

http.createServer(function (request, response) {
    response.writeHead(200, {
        'Content-Type': 'text/html;        charset=utf-8'
    });
    if (request.url !== "/favicon.ico") { //清除第2此访问
        user = new UserBean();
        user.eventEmit.once("zhuceSuc", function (uname, pwd) {//zhuceSuc:事件名称
            response.write("注册成功");
            console.log('传来uname:' + uname);
            console.log('传来pwd:' + pwd);
            user.login(request, response);
            response.end('');
        });//注册监听
        user.zhuce(request, response);
    }
}).listen(8000);
console.log('Server running  at http://127.0.0.1:8000/');

猜你喜欢

转载自blog.csdn.net/u013101178/article/details/84845375