Node中的模块化之自定义模块

nodejs为我们提供了很多模块,但是我们也可以自己定义一个模块
首先在我们的node文件夹中创建两个文件,一个叫做1.js,另一个叫做mode.js(名字可以随便叫),

mode.js中写的是我们自定义的模块,1.js要使用我们自定义的模块

在mode.js中我们自定义一个模块,声明一个变量

    var a=12;

在1.js中我们要使用mode.js自定义的变量

const mod1=require('./mode.js');   //引入自定义模块,我们会发现引入自定义模块前面的路径要加上 ./,必须加,不加会出错
console.log(mod1.a);//输出模块中的变量

这时我们在命令行中执行 node 1.js 会发现输出undefined
这时因为1.js要访问模块mode.js中的内容,那么mode.js中的值就必须输出,我们用exports实现这个功能,所以mode.js中的内容需要改为

 export.a=12;

这时我们再在命令行中执行node 1.js时会发现12被输出了

但是如果我们的模块中不止有a,还有b,c,这时我们就需要把这些变量都输出

    exports.a=12;
    exports.b=5;
    exports.c=3

这时在1.js中再次输出a,b,c

  const mod1=require('./mode.js');
  console.log(mod1.a,mod1.b,mod1.c);

我们会发现a,b,c的值同样会被输出

但是这样太麻烦,我们可以寻找一个比这个更简单的方法,这时候就需要用到module了
同样实现上面的功能,我们只需要把mode.js中的代码改为以下即可

   module.exports={a:12,b:5,c:3};  

再次执行1.js,我们会发现a,b,c三个值同样会被输出,这样代码比原来简单多了。

总结:

 自定义模块所需要用到的三个关键词:
     1.require    //引入一个自定义模块
     2. exports   //单独输出一个模块
     3.  module  //批量输出模块
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 今天是“键说心语”第6天,与您分享的关键词是“抱怨”。 办公室里,“今天发工资了,你的工资怎样?哎,我就不说了,每...
    林含键阅读 341评论 4 4
  • 曹操说:“为什么我要叫曹操,我不是曹家研发的体操”。 张飞说:“为什么我要叫张飞,我不是张家的第一肥仔。” 秦始皇...
    念来过倒要字名阅读 293评论 1 2
  • 人越是不动越是没精神 放任自己多,跟着心走 结果就开始散架,当真的想做点什么事情时,提不起那份精神去琢磨,去实行
    robin农阅读 68评论 0 0
  • 一直不喜欢雨,尤其是绵绵细雨,没完没了,徒增伤感。怎么也想不到,在五月的尾梢,我生病了。嗓子难受,老觉得有东西堵住...
    小河七七阅读 237评论 0 1