使用package.json

本地管理 npm 包的最好方式是创建一个 package.json 文件。

一个 package.json 文件好处:

  • 列出你的项目依赖的包
  • 指出包在你项目中使用的版本
  • 使您的构建可重复,因此更容易与其他开发人员共享

一个package.json必须具备

  • name
    • 全部小写
    • 没有空格的字
    • 破折号和下划线允许
  • version
    • 以...的形式 x.x.x

例:

{
  "name": "my-awesome-package",
  "version": "1.0.0"
}

创建一个 package.json

有如下两种创建方式:

1)运行命令行,问答方式

打开命令行,输入如下命令:

> npm init

这将启动一个命令行调查问卷,最后根据回答在目录中创建一个package.json的构建文件。

2)根据当前目录信息,创建一个默认package.json,不需要回答任何问题

打开命令行,输入如下命令:

> npm init --yes

亲测,空目录下生成如下:

{
  "name": "npm",
  "version": "1.0.0",
  "description": "",
  "main": ".npm-init.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}
  • name:当前目录名称
  • version:总是 1.0.0
  • description:readme文件第一行,或者一个空字符串 ""
  • main:总是 index.js
  • scripts:默认情况下创建一个空的test脚本
  • keywords:空的
  • author:空的
  • license: ISC
  • bugs:来自当前目录的信息(如果存在)
  • homepage:来自当前目录的信息(如果存在)

为init做默认的设置:

> npm set init.author.email "[email protected]"
> npm set init.author.name "xiaoxiaoxiao"

那么下一次,npm init构建项目时,package.json中的author默认显示如下:

"author": "xiaoxiaoxiao <[email protected]>",

注意:

如果package.json中没有description,那么npm使用README.md文件第一行来代替。这个可以帮助别人快速搜索到你的npm包

3)dependencies 和 devDependencies

dependencies 应用程序上生产环境

命令行方式添加一条到package.json的dependencies:

npm install <package_name> --save

package.json中手动编写:

dependencies:{
  "my_test_framework": "^3.1.0" # 匹配主要版本3的包的任何版本  ^表示任意
}
devDependencies 应用程序开发测试中

命令行方式添加一条到package.json的devDependencies:

npm install <package_name> --save-dev
两者区别

举个例子,比如我们写一个项目要依赖于jQuery,没有这个包的依赖运行就会报错,这时候就把这个依赖写入dependencies;

而我们使用的一些构建工具比如glup、webpack这些只是在开发中使用的包,上线以后就和他们没关系了,所以将它写入devDependencies。

注意:npm install两者都会下载

results matching ""

    No results matching ""