【基础】package.json文件详解

举报
青年码农 发表于 2022/08/25 00:16:29 2022/08/25
【摘要】 随着前端由多页面到单页面,由零散的文件到模块化开发,Node为前端工程化,模块化注入了新鲜的血液,在一个完整的模块化开发项目中,package.json 文件无处不在。这个文件主要是做什么、有什么用,今天就详细讲解下。 1.作用 每个项目的根目录下面,一般都有一个package.json文件,定义了这个项目所需要的各...

随着前端由多页面到单页面,由零散的文件到模块化开发,Node为前端工程化,模块化注入了新鲜的血液,在一个完整的模块化开发项目中,package.json 文件无处不在。这个文件主要是做什么、有什么用,今天就详细讲解下。

1.作用

每个项目的根目录下面,一般都有一个package.json文件,定义了这个项目所需要的各种模块,以及项目的配置信息。

2.创建

package.json 文件创建有两种方式,手动创建或者自动创建。

手动创建:直接在项目根目录新建一个 package.json 文件,然后输入相关的内容。

自动创建:在项目根目录下执行 npm init,然后根据提示一步步输入相应的内容完成后即可自动创建。

3.示例


   
  1. {
  2.     "name""Hello World",
  3.     "version""0.0.1",
  4.     "author""张三",
  5.     "description""第一个node.js程序",
  6.     "keywords":["node.js","javascript"],
  7.     "repository": {
  8.         "type""git",
  9.         "url""https://path/to/url"
  10.     },
  11.     "license":"MIT",
  12.     "engines": {"node""0.10.x"},
  13.     "bugs":{"url":"http://github.com","email":"bug@example.com"},
  14.     "contributors":[{"name":"李四","email":"lisi@example.com"}],
  15.     "scripts": {
  16.         "start""node index.js"
  17.     },
  18.     "dependencies": {
  19.         "express""latest",
  20.         "mongoose""~3.8.3",
  21.         "MD5""^1.2.0"
  22.     },
  23.     "devDependencies": {
  24.         "bower""1.2.8",
  25.         "grunt""~0.4.1",
  26.         "browserify""^2.36.1",
  27.     }
  28. }

4.字段说明


   
  1. name                # 名称
  2. version             # 版本
  3. author              # 作者
  4. description         # 描述
  5. keywords            # 关键字
  6. repository          # Git仓库所在位置
  7. license             # 开源协议
  8. engines             # 所需要的node.js版本
  9. bugs                # bug地址
  10. contributors        # 贡献者
  11. scripts             # 脚本
  12. dependencies        # 生产环境下,项目运行所需依赖。
  13. devDependencies     # 开发环境下,项目所需依赖

5.版本号

可能很多人注意到了,dependencies和devDependencies依赖包的前面会有~或者^等符号的区别,主要讲解下比较常见的,npm模块的完整的版本号一般是【主版本 . 次要版本 . 补丁版本】


   
  1. 主版本          修复bug,兼容老版本
  2. 次要版本        新增功能,兼容老版本
  3. 补丁版本        新的架构调整,不兼容老版本
1 使用~

安装时不改变大版本号和次要版本号。比如~1.2.2,表示安装1.2.x的最新版本(不低于1.2.2),但是不安装1.3.x。

2 使用^

安装时不改变大版本号。比如ˆ1.2.2,表示安装1.x.x的最新版本(不低于1.2.2),但是不安装2.x.x。

3 不使用任何符号-指点版本

安装时只安装指定版本。比如1.2.2,只能安装1.2.2。

文章来源: blog.csdn.net,作者:NMGWAP,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/NMGWAP/article/details/125066711

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。