module.exports用法

Posted m2maomao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了module.exports用法相关的知识,希望对你有一定的参考价值。

module.exports 对象是由模块系统创建的。在我们自己写模块的时候,需要在模块最后写好模块接口,声明这个模块对外暴漏声明内容,module.exports提供了暴漏接口的方法。

 

1、返回一个JSON object

1 var app = {
2     name:‘app‘,
3     version:‘1.0.0‘,
4     sayName:function(name) {
5        console.log(this.name);   
6     }              
7 }
8 
9 module.exports = app;

这种方法可以返回全局共享的变量或者方法。

调用方法:

1 var app = require("./app.js");
2 app.sayName(‘hello‘);//hello

或者这样用:

 1 var func1 = function(){
 2  console.log("func1");   
 3 };
 4 
 5 var func2 = function(){
 6 console.log("fun2");
 7 };
 8 
 9 exports.function1 = func1;
10 exports.function2 = func2;

调用方法为:

var functions = require("./functions");
functions.function1();
functions.function2();

2、返回一个构造函数

CLASS.js

var CLASS = function(args) {
this.args = args;
}

module.exports = CLASS;

调用:

var CLASS = require("./CLASS.js");
var c = new CLASS(‘arguments‘);

3、返回一个实例对象:

//CLASS.js
var CLASS = function() {
this.name = "class";
}
CLASS.prototype.func = function(){
alert(this.name);
}
module.exports = new CLASS();

调用:

var c = require("./CLASS.js");
c.func();//"class"

 

以上是关于module.exports用法的主要内容,如果未能解决你的问题,请参考以下文章

Vue报错:Uncaught TypeError: Cannot assign to read only property 'exports' of object 的解决方法(代码片段

node基础再现--module.exports 和exports

Node.js中exports与module.exports的区别

module.exports和exports

module.exports 与 exports区别

关于exports 和 module.exports