package.json相关知识记录

一、相关字段

npm官方字段介绍

🍧 bin   =>   简单理解:指定命令的名称及路径

🍉 相当于想path中添加路径,局部安装是在./node_modules/.bin/,全局安装是在全局的bin目录

🍉 bin指定的文件必须以#!/usr/bin/env node开头,系统才会使用node去执行该指定文件

🍉 npm link对开发的npm包进行调试测试的时候也可以用到

json 复制代码
// 情况1,bin字段是一个对象
// 命令行运行  =>  show xxx参数
"bin": {
	"show": "./lib/index.js"
}

// 情况2,bin字段是一个字符串
// 命令行运行  =>  [npm包名] xxx参数
"bin": "./lib/index.js"

🍧 files   =>   简单理解:发布到npm包时需要打包的文件

🍉 以下的配置在npm打包的过程中,无论设置怎样的配置文件都会被打包到npm包中

🍉 🍉 package.json

🍉 🍉 README

🍉 🍉 CHANGES / CHANGELOG / HISTORY

🍉 🍉 LICENSE / LICENCE

🍉 🍉 NOTICE

🍉 🍉 The file in the "main" field

🍉 以下的配置在npm打包的过程中,不会被打包到npm包中

🍉 🍉 .git, CVS, .svn, .hg, .lock-wscript, .wafpickle-N, .DS_Store, npm-debug.log, .npmrc, node_modules, config.gypi, package-lock.json,

🍧 types  =>   简单理解:发布到npm包时需要打包的ts类型文件

二、依赖的版本号

常见版本号修饰符 ^和~

无修饰符   =>   0.1.2 匹配版本 0.1.2
~ 修饰符   =>   ~0.1.2 匹配版本 0.1.*
^ 修饰符   =>   ^0.1.2 匹配版本 0.*.*

版本号相关参考链接

🍉 版本号比较轮子   =>   compare-versions

🍉 package.json中版本号详解

🍉 npm依赖包指定git仓库

git 校验可能用到的配置

json 复制代码
 "lint-staged": {
    "**/*.{js,jsx,ts,tsx,vue}": "leolint exec eslint"
  }

代码校验及风格化可能用到的配置

json 复制代码
"husky": {
    "hooks": {
      "commit-msg": "leolint commit-msg-scan ",
      "pre-commit": "leolint commit-file-scan"
    }
  },
  "config": {
    "commitizen": {
      "path": "./node_modules/cz-conventional-changelog"
    }
  }
相关推荐
用户47949283569153 分钟前
面试官:为什么很多格式化工具都会在行尾额外空出一行
前端
知识分享小能手4 分钟前
Vue3 学习教程,从入门到精通,Vue3 中使用 Axios 进行 Ajax 请求的语法知识点与案例代码(23)
前端·javascript·vue.js·学习·ajax·vue·vue3
一大树4 分钟前
首屏白屏的处理方案~嗖得一下
前端
小old弟5 分钟前
🤔同时发送100个请求?!手撕,并发请求⌨️
前端
533_10 分钟前
[echarts] 更新数据
前端·javascript·echarts
excel10 分钟前
理解 JavaScript 中的迭代器协议与中断行为:for...of vs for...in
前端
幻雨様12 分钟前
UE5多人MOBA+GAS 番外篇:同时造成多种类型伤害,以各种属性值的百分比来应用伤害(版本二)
java·前端·ue5
讨厌吃蛋黄酥17 分钟前
利用Mock实现前后端联调的解决方案
前端·javascript·后端
zzywxc78738 分钟前
在处理大数据列表渲染时,React 虚拟列表是提升性能的关键技术,但在实际实现中常遇到渲染抖动和滚动定位偏移等问题。
前端·javascript·人工智能·深度学习·react.js·重构·ecmascript
Hello.Reader1 小时前
Rust → WebAssembly 的性能剖析全指南
前端·rust·wasm