Node.js 模塊和包管理器NPM

Node.js模塊可以讓文件導入其他 Node.js 文件公開的功能。
一個 Node.js文件就是一個模塊,這個文件可能是JavaScript 代碼、JSON 或者編譯過的C/C++ 擴展。

導出有兩種方式。

方式一:使用module.exports導出指定對象

新建一個module1.js文件,導出

const user = {
    userName: 'admin',
    password: '123'
};

module.exports = user;

新建一個getModule1.js文件,導入

const user = require('./module1');
console.log(user.userName, user.password); //admin 123

方式二:將導出的對象添加爲 exports 的屬性

新建一個module2.js文件,導出

const user = {
    userName: 'admin',
    password: '123'
};
exports.user = user;
/*
上面也可寫成這樣:
exports.user = {
    userName: 'admin',
    password: '123'
};
*/
exports.age = 22;

新建一個getModule2.js文件,導入

const user = require('./module2').user;
const age = require('./module2').age;
console.log(user.userName, user.password); //admin 123
console.log(age); //22

//也可以寫成這樣
const items = require('./module2');
console.log(items.user.userName, items.user.password); //admin 123
console.log(items.age); //22

包是在模塊基礎上更深一步的抽象,將某個獨立的功能封裝起來,用於發佈、更新、依賴管理和版本控制。

最簡單的包是一個作爲文件夾的模塊。
建立一個文件夾person,在裏面建立一個文件index.js

class Person{   
    constructor(name){
        this.name = name;
    }
    sayName(){
        console.log(this.name);
    }
}
module.exports = Person;

在person上一層建立一個文件getPerson.js引用包

const Person = require('./Person');
const person = new Person("aa");
person.sayName(); //aa

NPM

NPM是隨同NodeJS一起安裝的默認包管理工具,通過NPM可以安裝、共享、分發代碼,管理項目依賴關係。

在cmd命令提示符下輸入npm -v,可以顯示版本號:

C:\Users\lc>npm -v
6.14.11

安裝包分爲本地安裝和全局安裝。

本地安裝,安裝位置在當前目錄的node_modules子目錄下(所以輸入命令之前先cd切換到項目目錄路徑)

npm install <package-name>

引用包:

const  xx = require('package-name')

全局安裝,安裝位置可通過 npm root -g 查詢,Windows下在“C:\Users\本機用戶名\AppData\Roaming\npm\node_modules”

npm install -g <package-name>

更新單個包

npm update <package-name>

CNPM

CNPM是淘寶推出的npmjs.org 鏡像,可代替官方版本。
輸入下面命令安裝:

npm install -g cnpm --registry=https://registry.npm.taobao.org

查看版本:

cnpm -v

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章