阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      Node.js module.exports

      Node.js module.exports

      新增于: v0.1.16

      • < Object>

      module.exports 对象由 Module 系统创建。

      有时这是不可接受的;

      许多人希望他们的模块成为某个类的实例。

      为此,需要将期望导出的对象赋值给 module.exports

      注意,将期望的对象赋值给 exports 会简单地重新绑定本地的 exports 变量,这可能不是所期望的。

      例如,假设正在创建一个名为 a.js 的模块:

      const EventEmitter = require('events');
      
      module.exports = new EventEmitter();
      
      // 处理一些工作,并在一段时间后从模块自身触发 'ready' 事件。
      setTimeout(() => {
        module.exports.emit('ready');
      }, 1000);
      

      然后,在另一个文件中可以这么做:

      const a = require('./a');
      a.on('ready', () => {
        console.log('模块 a 已准备好');
      });
      
      

      注意,对 module.exports 的赋值必须立即完成。 不能在任何回调中完成。

      以下是不起作用的:

      x.js:

      setTimeout(() => {
        module.exports = { a: 'hello' };
      }, 0);
      
      

      y.js:

      
      const x = require('./x');
      console.log(x.a);
      

      更多module 对象的API介绍,请点击Node.js module 对象查看


      更多内容请参考:Node.js module 模块,或者通过 点击对应菜单 进行查看;


      目录
      本文目录
      目录