📜  Node.js 导出模块

📅  最后修改于: 2022-05-13 01:56:46.466000             🧑  作者: Mango

Node.js 导出模块

Node.js 中的module.exports用于将任何字面量、函数或对象导出为模块。它用于将 JavaScript 文件包含到 node.js 应用程序中。模块类似于用于表示当前模块的变量, exports是作为模块公开的对象。

句法:

  • module.exports = literal | function | object

    说明:这里赋值(字面量 | 函数 | object)直接暴露为模块,可以直接使用。

  • module.exports.variable = literal | function | object

    说明:这里分配的值(字面量量|函数|对象)被间接暴露为一个模块,并且可以使用变量来使用。

示例 1:导出字面量

  • 创建一个名为app.js的文件并使用module.exports导出字面量。
    module.exports = "GeeksforGeeks";
    
  • 创建一个名为index.js的文件并导入文件 app.js 以将导出的字面量打印到控制台。
    const company = require("./app");
    console.log(company);
    
  • 输出:
    GeeksforGeeks

示例 2:导出对象

  • 创建一个名为app.js的文件并使用module.exports导出对象。
    module.exports = {
      name: 'GeeksforGeeks',
      website: 'https://geeksforgeeks.org'
    }
    
  • 创建一个名为index.js的文件并导入文件 app.js 以将导出的对象数据打印到控制台。
    const company = require('./app');
      
    console.log(company.name);
    console.log(company.website);
    
  • 输出:
    GeeksforGeeks
    https://geeksforgeeks.org
    

示例 3:导出函数

  • 创建一个名为app.js的文件并使用module.exports导出函数。
    module.exports = function (a, b) {
      console.log(a + b);
    }
    
  • 创建一个名为index.js的文件并导入文件 app.js 以使用导出的函数。
    const sum = require('./app');
      
    sum(2, 5);
    
  • 输出:
    7

示例 4:将函数导出为类

  • 创建一个名为app.js的文件。使用 this 关键字定义一个函数并使用module.exports导出该函数。
    module.exports = function () {
      this.name = 'GeeksforGeeks';
      this.website = 'https://geeksforgeeks.org';
      this.info = () => {
        console.log(`Company name - ${this.name}`);
        console.log(`Website - ${this.website}`);
      }
    }
    
  • 创建一个名为index.js的文件并导入文件 app.js 以将导出的函数用作类。
    const Company = require('./app');
      
    const firstCompany = new Company();
      
    firstCompany.info();
    
  • 输出:
    Company name - GeeksforGeeks
    Website - https://geeksforgeeks.org
    

示例 5:从单独的文件夹加载模块

const index = require('./models/lang/index.js');

说明:在上面的示例中,index.js 文件位于模型文件夹内的 lang 文件夹下。我们可以使用./转到根文件夹,然后相对于它移动。