npm(Node Package Manager)是 Node.js 默认的、以 JavaScript 编写的软件包管理系统。它可以让 javascript 开发者能够更加轻松的共享代码或共用代码片段(或称为模块)。
官方网站:
www.npmjs.com
npm 提供了两种包的安装形式: 局部安装 和 全局安装 。你可以通过你的项目使用情况选择如何安装。 如果你的项目依赖于某个包,那么建议将改包安装到局部。其他其他条件下,比如你要在命令行工具中使用这个包,可选择在全局安装。
npm -v
# 本地安装 npm install package-name # 全局安装 npm install -g package-name
安装一个包后,会自动在本地或全局自动生成一个 node_modules
目录,用来存放安装的包。
添加 --save
标识命令,会将你安装的包写入你本地 package.json 文件内的 dependencies 键下。
更多用法点这里!
npm install --save package-name
# 查看本地包所在的绝对目录 npm root # 查看全局包所在的绝对目录 npm root -g
npm view package-name
也可在上面命令后面添加相应的参数查看相关的信息。
# 查看当前包的依赖关系 npm view package-name dependencies
# 查看本地(当前项目)使用的包 npm list # 查看全局使用的包 npm list -g
# 卸载本地包 npm uninstall package-name # 卸载全局包 npm uninstall -g package-name
# 更新本地包 npm update package-name # 更新全局包 npm update -g package-name
每一个包都有一个 package.json
文件,这个文件 存放了包的名称、版本、作者、机构、模块入口、依赖项等信息
。
创建一个 package.json 文件有两种方式:一种方法是直接在文本编辑器下创建并编辑 package.json 文件,另一种方法是在命令行下创建 npm init
。
# 在当前工作目录下以用户引导的方式创建一个全新的 package.json 文件 npm init
至于 package.json 文件的内容,可以命令行下输入命令 npm help json
打开帮助文档,根据实际需要自行初始化文件内容即可。下面列出了常用的配置项。
{
"name": "package-name",
"version": "1.0.0",
"main": "./main.js",
"description": "This is a description for my package!",
"keywords": [
"first-package",
"test"
],
"bugs": {
"url": "https://github.com/owner/project/issues",
"email": "percymong@163.com"
},
"author": {
"name": "percy",
"email": "percymong@163.com",
"url": "https:xxxx"
},
"contributors": [{
"name": "Mike",
"email": "1111@gmail.com"
}, {
"name": "Celeste",
"email": "2222@gmail.com"
}],
"license": "MIT",
"engines": {
"node": ">= 0.8.0"
},
"repository": {
"type": "git",
"url": "git+https://github.com/xxx/xxx.git"
},
"bin": {
"someTool": "./bin/someTool.js"
},
"scripts": {
"test": "echo This is a test!",
"startNormal": "./bin/someTool.js build",
"startUseBin": "someTool build"
},
"dependencies": {
"csslint": "^1.0.5",
"mongodb": "1.3.19"
},
"devDependencies": {
"browserify": "~13.0.0",
"karma-browserify": "~5.0.1"
}
}
下面是对其中一些字段的解释:
npm run start
时所要执行的命令 本来想把上面的注释直接写在上面代码的相应位置上,但是解析 json 时会报错,便在网上查了一下,在 StackOverflow 上找到了答案: How do I add comments to package.json for npm install?
# 解决办法,你应该这样写注释
{
"//": "This is a comment for name.",
"name": "package-name",
"version": "1.0.0"
}