当前位置:首页 > 科技  > 软件

简述 packages.json 中 41 个常用的配置字段,了解一下还挺有用

来源: 责编: 时间:2024-02-01 12:49:15 274观看
导读大家好,我是林三心,用最通俗易懂的话讲最难的知识点是我的座右铭,基础是进阶的前提是我的初心~背景我们现在开发项目都是需要配合node + npm的,那么你的项目目录中肯定会存在一个packages.json这个文件packages.json这个

大家好,我是林三心,用最通俗易懂的话讲最难的知识点是我的座右铭,基础是进阶的前提是我的初心~3kh28资讯网——每日最新资讯28at.com

背景

我们现在开发项目都是需要配合node + npm的,那么你的项目目录中肯定会存在一个packages.json这个文件3kh28资讯网——每日最新资讯28at.com

packages.json这个文件中有很多的字段,但是其实很多开发者只知道那几个字段的意思:3kh28资讯网——每日最新资讯28at.com

  • version:版本号
  • dependencies:生产依赖
  • devDependencies:开发依赖

其他就一概不知了,但是如果你想要实现前端进阶的话,前端工程化是绕不过去的一环,而packages.json则是前端工程化中重要的一部分!3kh28资讯网——每日最新资讯28at.com

必需字段

  • name: 定义你的项目的名称,不能使用.或_开头,并且不能包含大写字母
  • version: 定义你的项目的版本号,格式为 :大版本号.次版本号.修订号

描述字段

  • description: 项目的描述
  • keywords: 项目的关键词,会在 NPM 文档上显示
  • author: 项目的作者
  • contributors: 项目的贡献者
  • homepage: 项目的主页地址,一般放 github 的地址
  • repository: 项目的源码地址,一般放 github 的地址
  • bug: 项目提交问题的地址
  • funding: 项目捐赠支持的地址

依赖字段

  • dependencies: 生产依赖
  • devDependencies: 开发依赖
  • peerDependencies: 对等依赖,比如你开发一个库需要依赖vue,你的项目也需要依赖vue,这个时候peerDependencies里的vue就会忽略安装,提高安装效率
  • peerDependenciesMeta: 对等依赖标记
  • engines: 声明对 npm 或 node 的版本要求
  • workspaces: 单代码库管理多个子项目,pnpm 的 workspace 就是依赖了这个字段

脚本字段

  • scripts: 放一些项目运行的命令,比如 start、dev、build、prepare、test等等
  • config: 项目的一些配置,比如设置环境变量

入口 & 文件 & 类型 字段

  • bin: 定义命令行执行的文件
  • main: 指定你项目的入口文件
  • module: 指定项目的 esmodule 入口文件
  • browser: 指定浏览器引入时使用的入口文件(umd)
  • types: 指定项目的类型声明文件(.d.ts)
  • type: 一般要设置成 module,项目才能使用 esmodule 语法
  • exports: 当打包工具支持exports字段时(webpack、Rollup 等),以上main,browser,module,types四个字段都被忽略
"exports": {      ".": {      "import": "./dist/index.esm.js",      "require": "./dist/index.cjs.js",      "browser": "./dist/index.umd.js",      "types": "./dist/index.d.ts"    }}

"." 表示默认导出3kh28资讯网——每日最新资讯28at.com

"import": 指定了 ES module (ESM) 规范下的导出文件路径3kh28资讯网——每日最新资讯28at.com

"require": 指定了 CommonJS 规范下的导出文件路径3kh28资讯网——每日最新资讯28at.com

"browser": 指定了用于浏览器环境的导出文件路径3kh28资讯网——每日最新资讯28at.com

"types": 指定了类型声明文件的路径3kh28资讯网——每日最新资讯28at.com

发包字段

  • files: 指明哪些文件需要发包到 NPM 上
  • private: 设置是否要发到私有库上,发公共库的话 false
  • publishConfig: 指定发包到某个位置
  • os: 指定你的包适用于什么操作系统
  • cpu: 与 os 类似
  • license: 指定你的包的开源协议,各个协议允许做什么事情,如下图

图片图片3kh28资讯网——每日最新资讯28at.com

第三方字段(非官方)

  • eslintConfig: eslint配置,但是现在都不用这个区配置了,都是用 .eslintrc
  • babel: babel配置,现在不用了,都用 .babelrc
  • unpkg: 指定通过 cdn 使用你的包的时候的入口文件
  • lint-staged: 一般配合 githooks 一起对暂存区的文件进行代码校验
  • browserslist: 告知支持哪些浏览器
  • sideEffects: 说明项目是否有副作用,配合 webpoack 或者 rollup进行 tree-shaking

图片图片3kh28资讯网——每日最新资讯28at.com

3kh28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-70429-0.html简述 packages.json 中 41 个常用的配置字段,了解一下还挺有用

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Python 实现定时任务的九种方案

下一篇: C++实现多功能计算器

标签:
  • 热门焦点
  • 6月安卓手机性能榜:vivo/iQOO霸占旗舰排行榜前三

    2023年上半年已经正式过去了,我们也迎来了安兔兔V10版本,在新的骁龙8Gen3和天玑9300发布之前,性能榜的榜单大体会以骁龙8Gen2和天玑9200+为主,至于那颗3.36GHz的骁龙8Gen2领先
  • 5月安卓手机好评榜:魅族20 Pro夺冠

    性能榜和性价比榜之后,我们来看最后的安卓手机好评榜,数据来源安兔兔评测,收集时间2023年5月1日至5月31日,仅限国内市场。第一名:魅族20 Pro好评率:97.50%不得不感慨魅族老品牌还
  • 0糖0卡0脂 旭日森林仙草乌龙茶优惠:15瓶到手29元

    旭日森林无糖仙草乌龙茶510ml*15瓶平时要卖为79.9元,今日下单领取50元优惠券,到手价为29.9元。产品规格:0糖0卡0脂,添加草本仙草汁,清凉爽口,富含茶多酚,保留
  • 摸鱼心法第一章——和配置文件说拜拜

    为了能摸鱼我们团队做了容器化,但是带来的问题是服务配置文件很麻烦,然后大家在群里进行了“亲切友好”的沟通图片图片图片图片对比就对比,简单对比下独立配置中心和k8s作为配
  • 一文看懂为苹果Vision Pro开发应用程序

    译者 | 布加迪审校 | 重楼苹果的Vision Pro是一款混合现实(MR)头戴设备。Vision Pro结合了虚拟现实(VR)和增强现实(AR)的沉浸感。其高分辨率显示屏、先进的传感器和强大的处理能力
  • K8S | Service服务发现

    一、背景在微服务架构中,这里以开发环境「Dev」为基础来描述,在K8S集群中通常会开放:路由网关、注册中心、配置中心等相关服务,可以被集群外部访问;图片对于测试「Tes」环境或者
  • 虚拟键盘 API 的妙用

    你是否在遇到过这样的问题:移动设备上有一个固定元素,当激活虚拟键盘时,该元素被隐藏在了键盘下方?多年来,这一直是 Web 上的默认行为,在本文中,我们将探讨这个问题、为什么会发生
  • 到手价3099元起!iQOO Neo8 Pro今日首销:安卓性能最强旗舰

    5月23日,iQOO如期举行了新品发布会,全新的iQOO Neo8系列也正式与大家见面,包含iQOO Neo8和iQOO Neo8 Pro两个版本,其中标准版搭载高通骁龙8+,而Pro版更
  • 机构称Q2全球智能手机出货量同比下滑11% 苹果份额依旧第2

    7月20日消息,据外媒报道,研究机构的报告显示,由于需求下滑,今年二季度全球智能手机的出货量,同比下滑了11%,三星、苹果等主要厂商的销量,较去年同期均有下
Top