zoukankan      html  css  js  c++  java
  • node 基础API(event)

    // 绑定事件
    const EventEmitter=require('events');
    
    class CustomEvent extends EventEmitter{}
    
    const ce=new CustomEvent();
    
    ce.on('test',()=>{
        console.log('this is a test');
    });
    
    setInterval(()=>{
        ce.emit('test')
    },1000)

    传参:

    const EventEmitter=require('events');
    
    class CustomEvent extends EventEmitter{}
    
    const ce=new CustomEvent();
    
    ce.on('error',(err)=>{
        console.log(err);
        console.log(time);
    });
    
    ce.emit('error',new Error('oops!'));
    
    // Error: oops!
    
    // 多个参数
    ce.on('error',(err,time)=>{
        console.log(err);
        console.log(time);
    });
    
    ce.emit('error',new Error('oops!'),Date.now());
    
    // Error: oops!
    // 1563287056187

    调用一次:

    const EventEmitter=require('events');
    
    class CustomEvent extends EventEmitter{}
    
    const ce=new CustomEvent();
    
    ce.once('test',()=>{
        console.log('test');
    });
    
    setInterval(()=>{
        ce.emit('test');
    },500);
    
    // test  一次

    移出事件:

    const EventEmitter=require('events');
    
    class CustomEvent extends EventEmitter{}
    
    const ce=new CustomEvent();
    
    function fn1(){
        console.log('fn1');
    }
    
    function fn2(){
        console.log('fn2');
    }
    
    ce.on('test',fn1);
    ce.on('test',fn2);
    
    setInterval(()=>{
        ce.emit('test')
    },1000);
    
    setTimeout(()=>{
        // ce.removeListener('test',fn1);  // 移除单个
    
        ce.removeAllListeners('test')
    },3000)
  • 相关阅读:
    jsonp 的 post
    js replace常用用法
    zindex
    x秒前
    手写jsonp
    webview 冒泡慢?
    人民币大写转阿拉伯数字
    checked
    Deadlock Troubleshooting Trace 1222
    [转]基于LUCENE实现自己的推荐引擎
  • 原文地址:https://www.cnblogs.com/jingouli/p/11198001.html
Copyright © 2011-2022 走看看