首页 > 其他分享 >npm 包 package.json 配置文件

npm 包 package.json 配置文件

时间:2024-03-03 15:45:28浏览次数:20  
标签:npm 配置文件 package 版本号 js json test

package.json 文件

每个前端项目中都有 package.json 文件,它是用于声明依赖的 npm 包配置文件。

1. 生成 package.json 文件

yarn init -y

{
  "name": "package.json文件",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT"
}
  • name: 项目名称,必须字段。
  • version: 项目版本,必须字段。
  • main: 入口文件。
  • license: 项目准许的许可证。

1.1. name 字段

(1) 长度必须小于或等于 214 个字符,不能以 "." 或者 "_" 开头,不能包含大写字母。
(2) 名称可以作为参数被传入 require(""),用来导入模块,需要尽量语义化。
(3) 字段不能和其他模块重名,可以使用 npm view 命令查询模块名是否存在,如果不存在就显示 404,如果存在就显示详细信息

abcdefghi 模块不存在:

模块名不存在

axios 模块存在:

模块名存在

1.2. version 字段

(1)遵循语义化版本规范,格式:主版本号.次版本号.修订版号,主版本号表示有不兼容的 API 修改,次版本号表示有向下兼容的功能性新增,修订版本号表示向下兼容的 bug 修复。
(2)查看 npm 包的版本信息,如 axios,查看最新版本:npm view axios version,查看所有版本:npm view axios versions

axios 最新版本

axios 所有版本

(3)如果某个版本的改动比较大,且不稳定,可能无法满足预期的兼容性,就需要发布先行版本。先行版本号可以在 主版本号.次版本号.修订版号 后面添加 "-" 号连接以分隔标识符和版本编译信息:内部版本(alpha)、公测版本(beta)、候选版本(rc,release candiate)。

1.3. main 配置

用来指定加载的入口文件,如果项目发布成了 npm 包,则用户使用 require('my-module') 后返回的就是 main 字段中所列出的 module.exports 属性。如果不指定该字段,则 Node 会尝试加载根目录下的 index.js、index.json,如果都没有找到就会报错,只能通过 require('my-module/dist/xxx.js') 加载。

1.4. scripts 脚本

package.json 内置脚本入口,是 key-value,key 是可运行的命令,通过 npm run 执行命令。除了运行基本的 scripts 命令,还可以结合 prepost 完成潜质、后续操作。如:

"scripts": {
  "test": "test.js",
  "pretest": "pre-test.js",
  "posttest": "post-test.js"
}

这三个文件中代码如下:

// test.js
console.log("test");
// pre-test.js
console.log("pre-test");
// post-test.js
console.log("post-test");

结合 pre 和 post 完成前置和后续操作

执行顺序是 pretest-test-posttest,适用于 scripts 命令存在一定的先后关系。

标签:npm,配置文件,package,版本号,js,json,test
From: https://www.cnblogs.com/xinjie-just/p/18050067

相关文章

  • C# 调用Web Api post提交json格式
    转载:https://blog.csdn.net/q_17600689511/article/details/82735172?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-2-82735172-blog-86551903.pc_relevant_multi_platform_whitelistv3&depth_1-utm_source=di......
  • json中的转义字符
    JSON的转义字符主要包括以下几种:双引号("):在JSON中,双引号用于定义字符串的开始和结束。如果需要在字符串中包含实际的双引号字符,则必须使用反斜杠(\)进行转义,即"。反斜杠(\):由于反斜杠在JSON中具有特殊含义(用于转义字符),因此如果需要在字符串中包含实际的反斜杠字符,则必须使用另一个反......
  • 各种类型json解析
    usingNewtonsoft.Json;usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Web.Script.Serialization;namespaceAnalysisJson{classProgram{staticvoidMain(string[]args......
  • json 的基本类型
    JSON(JavaScriptObjectNotation)主要支持以下6种基本数据类型:字符串(String):由一系列Unicode字符组成的序列,用双引号括起来表示。例如:"Hello,world"。注意,在JSON中不能使用单引号来表示字符串,双引号是特殊字符。数字(Number):可以是整数或浮点数。JSON中没有复数类型或特殊的有理数......
  • pnpm link --global 用于全局链接本地开发的包
    pnpmlink--global是pnpm(一个更快、更节省磁盘空间的Node.js包管理器)中的命令,它用于全局链接本地开发的包。当你在开发一个自定义的npm包,并希望在全局环境中像已安装的全局包那样试用它时,可以使用pnpmlink--global命令。具体步骤如下:首先,确保你已经在你的包目录中......
  • npm配置淘宝镜像
    设置淘宝镜像源打开终端,输入以下命令来设置淘宝镜像源npmconfigsetregistryhttps://registry.npm.taobao.org/查看镜像使用状态。输入以下命令来查看当前的镜像源是否已成功配置:npmconfiggetregistry如果返回的地址是https://registry.npm.taobao.org/,则表示淘宝镜......
  • Windows安装node.js以及环境配置、常见npm镜像源、npm安装包报错 解决https证书过期 r
    一、Windows安装node.js以及环境配置1、下载Node.js安装包Node.js官方网站,选择LTS版本或者最新版本,然后点击下载按钮。.msi是软件安装包、.zip是压缩包,解压之后即可,不需要安装2、运行安装程序下载完成后,双击安装包运行安装程序。安装完成后,在Node的安装目录下创建两个......
  • 通过@vercel/ncc 优化node npm 项目的大小
    以前我写过关于使用@vercel/ncc进行node应用快速部署的,同时对于node应用的大小会减少不少app参考玩法简单说明:简单玩法可以直接基于ncc构建就行了,我们可以all-in-one然后基于nccbuild,会自动处理我们的依赖包,然后我们的项目复制构建之后目录的文件通过nodeindex.js运......
  • cnpm i报错 cpm:无法加载文件c:wsers vdministratorpata Roaming mpmcnpm.ps1,因为在
    cpm:无法加载文件c:wsersvdministratorpataRoamingmpmcnpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅htps:/g.microsoft.con/fvlink/?LinkID=135170中的aboutExecutionPolicies。所在位置行:1字符:1+cnpmi.+CategoryInfoSecurityError:(:)[],PsSecuri......
  • NPM install报错certificate has expired
    Installfail!Error:certificatehasexpiredError:certificatehasexpiredatTLSSocket.onConnectSecure(_tls_wrap.js:1515:34)atTLSSocket.emit(events.js:400:28)atTLSSocket._finishInit(_tls_wrap.js:937:8)atTLSWrap.ssl.onhandshakedone(_......