模块

模块 一

创建 模块 exports 可以暴露 函数 变量

var bar = require("./bar.js");
var msg = "你好";
var info = "呵呵";

function showInfo(){
    console.log(info);
}

exports.msg = msg;
exports.info = info;
exports.showInfo = showInfo;

使用

引入

var foo = require("./test/foo.js");

使用 .语法使用

console.log(foo.msg);
console.log(foo.info);
foo.showInfo();

模块二

People.js

function People(name,sex,age){
    this.name = name;
    this.sex = sex;
    this.age = age;
}

People.prototype = {
    sayHello : function(){
        console.log(this.name + this.sex + this.age);
    }
}

//exports.People = People; //不能使用这个方法暴露

//此时,People就被视为构造函数,可以用new来实例化了。
module.exports = People;

使用

//导入
var People = require("./test/People.js");

var xiaoming = new People("小明","男","12");
xiaoming.sayHello();

也就是说,js文件和js文件之间有两种合作的模式:

1) 某一个js文件中,提供了函数,供别人使用。 只需要暴露函数就行了; exports.msg=msg;

2) 某一个js文件,描述了一个类。 module.exports = People;

注意

var foo = require("foo.js");
//var foo = require("./foo.js");

如果没有写./  会在node_modules目录下查找
var foo = require("foo");//应用文件夹
相当于 应用node_modules/foo 中index.js
当目录中没有 index.js文件 
可以通过node_modules/foo 目录先package.json
配置入口文件

package.json
{
  "name": "kaoladebar",
  "version": "1.0.1",
  "main" : "app.js"
}

每个模块文件夹中,推荐都写个package.json文件  node 将会自动读取配置 。
main 项 为入口

模块就是一些功能的封装, 经常使用的功能被人封装成模块 放在开源社区中-npm ,

npm也是一个工具 node package management

https://www.npmjs.com/

在网站找寻自己需要的项目

在自己的项目目录下 执行 npm install 安装项目名

results matching ""

    No results matching ""