码迷,mamicode.com
首页 > Web开发 > 详细

11-《Node.js开发指南-模块和包

时间:2019-12-21 12:09:49      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:setname   require   set   package   OLE   功能   console   通过   指南   

什么是模块?

一个node.js文件就是一个模块,这个文件可能是js代码,json或者编译过的C/C++扩展

创建及加载模块

//a.js
var name;
exports.setName = function(thyName){
    name = thyName;
};
exports.sayHello = function(){
    console.log("hello"+name);
};
//b.js
var myModule =  require('./a.js');
myModule.setName('柠檬不酸');
myModule.sayHello();

对象封装到模块中

第一种

function Hello(){
    var name;
    this.setName = function (thyName){
        name=thyName;
    }
    this.sayHello = function(){
        console.log('hello'+name)
    }
}
exports.Hello=Hello;
var Hello = require('./c.js').Hello;
hello = new Hello();
hello.setName('柠檬不酸le');
hello.sayHello();

第二种

//c.js
function Hello(){
    var name;
    this.setName = function (thyName){
        name=thyName;
    }
    this.sayHello = function(){
        console.log('hello'+name)
    }
}
module.exports = Hello;
//d.js
var Hello = require('./c.js');
hello = new Hello();
hello.setName('柠檬不酸');
hello.sayHello();
注意:不可以通过exports 直接赋值代替对module.exports赋值;
exports实际上只是一个和module.exports指向同一个对象的变量,它本身会在模块执行结束后释放,
但module不会,因此只能通过指定module.exports来改变访问接口;

创建包

包是在模块基础上更深一步的抽象,它将某个独立的功能封装起来,用于发布,更新,依赖管理和版本控制

Node.js的包是一个目录,其中包含一个JSON格式的包说明文件package.json

11-《Node.js开发指南-模块和包

标签:setname   require   set   package   OLE   功能   console   通过   指南   

原文地址:https://www.cnblogs.com/foreverLuckyStar/p/12076111.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!