前端开发必须要知道的package.json文件

news2024/10/5 23:40:33

前言

package.json 文件是一个 Node.js 项目的配置文件,用于描述项目的元数据信息(如名称、版本、作者、依赖等),以及运行和构建该项目所需的脚本命令。

在项目开发过程中, package.json 文件的维护和更新是非常重要的,尤其是对于依赖管理和版本控制等方面。

配置

以下是一个常见的 package.json 文件示例:

{
  "name": "my-project",
  "version": "1.0.0",
  "description": "a brief description of my project",
  "main": "index.js",
  "scripts": {
    "start": "node index.js",
    "dev": "nodemon index.js",
    "build": "webpack --mode production"
  },
  "dependencies": {
    "express": "^4.17.1",
    "axios": "^0.21.1"
  },
  "devDependencies": {
    "nodemon": "^2.0.7",
    "webpack": "^5.39.0"
  }
}
  • name:项目名称,通常使用小写字母和连字符组成,npm 包名也以此为准。
  • version:项目版本号,符合 语义化版本规范。
  • description:项目描述信息,简要说明项目的目标、特点和功能。
  • main:指定项目的入口文件,可以是 .js.json 或 .node 等扩展名的文件路径或模块名。
  • scripts:定义了一组可执行的脚本命令,可以通过 npm run <script-name> 或 yarn <script-name> 等方式调用。其中 start 是一个默认的脚本命令,可以直接使用 npm start 命令来执行。
  • dependencies:指定项目运行时所依赖的第三方包(生产环境依赖)。
  • devDependencies:指定项目开发和构建时依赖的第三方包(开发环境依赖)。

除了以上常见属性,还有一些非必须的属性可以在 package.json 文件中配置,例如 licenserepositorykeywords 等。

生成

  • npm init

在项目目录中打开终端或命令行工具,输入 npm init 命令并按照提示进行交互式配置,最后会自动生成一个 package.json 文件。

运行 npm init 命令时,会依次询问一些信息,例如:

 

  • npm init -y

npm init -y 命令表示使用默认值快速生成 package.json 文件,不需要用户逐一输入配置信息。该命令会在当前目录下生成一个默认的 package.json 文件,各项配置信息都使用默认值。

  • 在项目根目录手动创建

 除了使用上述两种命令外,也可以在项目根目录手动创建一个 package.json 文件,并填写必要的元数据信息。通常建议使用命令来生成 package.json 文件,避免手动填写时出现格式错误或缺失重要信息的问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/666063.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Axure8 零基础操作入门

参考&#xff1a;黑马产品经理课程 视频资源&#xff1a;day1&day2&#xff0c;Axure部分 Axure8常用功能 选择/缩放 选择 包含选中&#xff1a;全部选中才有效&#xff08;避免误操作&#xff0c;建议使用这个&#xff09;相交选中&#xff1a;相交即全选中 缩放 元件等…

PHP开发工具22-PHP中安装和使用xdebug

文章目录 前言配置详解总结 前言 本文已收录于PHP全栈系列专栏&#xff1a;PHP快速入门与实战 作为一个程序员&#xff0c;千万不要说你没有用过debug工具&#xff0c;不然有点说不过去。xdebug是PHP语言一个强大的利器&#xff0c;用他可以做很多事情。 xdebug是PHP开发者常…

提升编程效率:你不能错过的18款VS Code扩展

微信搜索 【大迁世界】, 我会第一时间和你分享前端行业趋势&#xff0c;学习途径等等。 本文 GitHub https://github.com/qq449245884/xiaozhi 已收录&#xff0c;有一线大厂面试完整考点、资料以及我的系列文章。 快来免费体验ChatGpt plus版本的&#xff0c;我们出的钱 体验地…

LTV-5341-ASEMI代理台湾光宝高速光耦LTV-5341

编辑&#xff1a;ll LTV-5341-ASEMI代理台湾光宝高速光耦LTV-5341 型号&#xff1a;LTV-155E 品牌&#xff1a;光宝 封装&#xff1a;LSOP-5 引脚数量&#xff1a;5 类型&#xff1a;光耦 特性&#xff1a;台湾光宝、IGBT驱动器、储能专用光耦&#xff3c;高速光耦 封装…

pnpm项目运行启动以及如何迁移到内网

1.迁移前的准备 首先看对node版本和pnpm版本的要求是什么&#xff0c;我的是自己电脑&#xff08;windows系统&#xff09;和内网电脑&#xff08;windows系统&#xff09;上的环境一致的 我的项目要求是 1.node版本 16.20.0 2.pnpm版本 8.6.2 需要先将node 和 pnpm 安装好相应…

今年前改BUG,下午就被通知在改进优化了

内卷可以说是 2023 年最火的一个词了。2022 年刚开始&#xff0c;在很多程序员网站看到很多 Java 程序员的 2023 年度总结都是&#xff1a;Java 越来越卷了&#xff08;手动狗头&#xff09;&#xff0c;2023 年是被卷的一年。前有几百万毕业生虎视眈眈&#xff0c;后有在职人员…

slam十四讲 03 Eigen实践之三维空间刚体运动

目录 1 初始化 2 旋转空间中的向量 3 欧拉角 4 变换矩阵 5 四元素 完整程序 1 初始化 旋转的两种办法&#xff1a; &#xff08;1&#xff09;旋转矩阵&#xff1a;a Ra, a R^T a, 旋转矩阵的特性&#xff1a;是一个行列式为1的正交矩阵. 三维空间的旋转是3x3矩阵&am…

基于SpringBoot的校园请假管理系统

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 一、项目背景介绍&#xff1a; 校园请假信息管理系统…

php质量检查工具 phpmd的使用

PHPMD简介 团队在使用php-cs-fixer 代码格式自动式化工具之后,在格式,代码错误等方面带来了很大便利,不过在命名,代码质量,代码复杂度,缺少一些检查,在网上搜索后,发现PHPMD 一个PHP代码静态分析工具. 安装 官方网站 github 你可以直接到下载页面封装好的 phar 包&#xff1…

云原生数据库受到青睐,亚马逊云科技数据库提供多项功能

小小的改变&#xff0c;标志一个新时代的全面开启&#xff0c;一个数据库的云原生时代。前不久&#xff0c;Gartner公布了一组数据&#xff0c;引起了不小的讨论度。在2022年全球数据库管理系统的市场份额排名中&#xff0c;作为纯云厂商的亚马逊云科技&#xff0c;超越了老牌传…

一种基于目标的可解释的自动驾驶预测和规划策略

摘要&#xff1a; 本文介绍了一种通过理性逆向规划进行目标识别和多模态轨迹预测的方法。通过将目标识别与MCTS 计划相结合&#xff0c;为自车生成优化计划。 最近炒得比较火的影子模式实际就是在通过数据收集的方式不断模拟自动驾驶系统按照人类驾驶习惯实现人之间的交互过程…

QML 快速上手3 - QuickControl2

目录 QuickControl2简介风格设置control 配置文件图像浏览器案例component 组件报错问题StackViewSwipeView QuickControl2 简介 quickcontrol 用于快速构建风格化的用户界面 它包括了以下几个预制的组件风格 Default QT 默认风格Universal windows 桌面风格Material 谷歌推…

【FPGA】译码器、计数器及数码管显示

写在前面 万万没想到最后去了FPGA岗位&#xff0c;但是FPGA只在研一学过&#xff0c;确实忘得差不多了&#xff0c;因此从头把东西过亿边 这是某本书上的第一章节&#xff0c;感觉写的还是挺不错的&#xff0c;大概看了一下让我回想起很多知识&#xff0c;个人感觉比较适合学习…

《effective java》中关于解决构造函数/方法签名包含大量参数的解决方法

针对构造方法 重叠构造器模式 重叠构造器模式是一种编程中的反模式&#xff0c;指的是一个类有多个构造函数&#xff0c;每个构造函数都有不同数量的参数&#xff0c;从而可以根据不同的情况创建对象。这种方式会导致代码可读性和可维护性降低&#xff0c;因为构造函数过多&…

echarts柱状图数据太多设置滚动条

当你的项目中因数据量太大&#xff0c;导致柱状图数据全部叠在一起不便于看的时候&#xff0c;你们是怎么处理的&#xff1f; 大部分同学可能第一想法就是裁剪一部分数据&#xff0c;仅展示页面最大限度能够展示的数据&#xff0c;这确实是一个好办法&#xff0c;简单快速。但…

【分布式】分布式存储架构

文章目录 一、集中存储结构二、分布式存储2.1 、分布式存储的兴起2.2 、分布式存储的重要性2.3 、分布式存储的种类和比较 三、分布式理论浅析3.1 、一致性和可用性3.2 、数据分布哈希分布&#xff08; Swift &#xff09;顺序分布&#xff08; Bigtable &#xff09;CRUSH 分布…

模版方法模式在 JDK 及 spring 源码中的引用

模版方法模式 模板方法模式是一种行为设计模式&#xff0c; 它在超类中定义了一个算法的框架&#xff0c; 允许子类在不修改结构的情况下重写算法的特定步骤。 更多有关于模版方法模式的介绍详见&#xff1a;https://refactoringguru.cn/design-patterns/template-method 模版…

【4】tf实现神经网络模型

1 M-P神经元与神经网络前向传输 1.1 训练单个神经元 一个含有两个输入的神经元&#xff0c;指定一个输入x1x21,期望y能输出0.3。要求不断的输入x1x21,然后不断的训练权重w与偏置b值&#xff0c;训练一万次后&#xff0c;再次输入x1与x2输出y的值是否为0.3 # 导入TensorFlow库…

Linux 进程的睡眠和唤醒详解

概要 在Linux中&#xff0c;仅等待CPU时间的进程称为就绪进程&#xff0c;它们被放置在一个运行队列中&#xff0c;一个就绪进程的状 态标志位为 TASK_RUNNING。一旦一个运行中的进程时间片用完&#xff0c; Linux 内核的调度器会剥夺这个进程对CPU的控制权&#xff0c;并且从…

QGIS实现tiff影像栅格数据切片教程

实现栅格切片的方式有很多种,geoserver可以,qgis可以。自己写代码也可以,方式非常多。这篇文章介绍一下如何使用QGIS实现栅格切片。 首先我们要去下载一个qgis软件。下载地址如下: Welcome to the QGIS project! 随后我们打开软件,然后把要切片的栅格数据(tiff文件或者…