Nodejs npm install --save-dev是懒人的写法?

Nodejs npm install --save-dev是懒人的写法?

懒得创建packages.json,就用上面这命令代替了? 可是最后还是要创建packages.json文件的呢:(

敲packages.json真麻烦,有啥可以直接捣鼓的模板么?

9 回复

Nodejs npm install --save-dev是懒人的写法?

问题描述

有人认为使用 npm install --save-dev 是一种懒人的做法。他们认为这样做可以避免手动创建 package.json 文件。然而,最终还是需要创建 package.json 文件。

解释

  1. 什么是 --save-dev

    • 使用 npm install --save-dev <package> 命令安装开发依赖包,并将其自动添加到 package.json 文件中的 devDependencies 字段。
    • 这样做的好处是不需要手动编辑 package.json 文件,可以一步完成安装和配置。
  2. 为什么还是需要创建 package.json 文件?

    • 即使使用 --save-dev,你仍然需要一个 package.json 文件来存储项目的基本信息和依赖关系。
    • 如果你的项目目录中没有 package.json 文件,npm install --save-dev 会自动创建一个基础的 package.json 文件。
  3. 是否可以使用模板快速创建 package.json

    • 是的,你可以使用模板来快速生成 package.json 文件。例如,你可以使用 npm init 命令来初始化一个基本的 package.json 文件。
    • npm init 会引导你通过一系列交互式问题来创建 package.json 文件。

示例代码

  1. 使用 npm install --save-dev 安装开发依赖

    # 安装 ESLint 并添加到 devDependencies
    npm install --save-dev eslint
    

    执行上述命令后,如果没有 package.json 文件,npm 会自动创建一个,并将 eslint 添加到 devDependencies 中:

    {
      "name": "your-project",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "keywords": [],
      "author": "",
      "license": "ISC",
      "devDependencies": {
        "eslint": "^8.0.0"
      }
    }
    
  2. 使用 npm init 快速创建 package.json 文件

    # 初始化项目并创建 package.json
    npm init -y
    

    上述命令会自动生成一个默认的 package.json 文件,其中包含一些默认值:

    {
      "name": "your-project",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "keywords": [],
      "author": "",
      "license": "ISC"
    }
    

总结

使用 npm install --save-dev 可以简化开发依赖的管理,但你仍然需要一个 package.json 文件来组织项目的依赖关系。通过 npm initnpm init -y,你可以快速创建一个基础的 package.json 文件,从而更好地管理和维护项目。


建立了一个空的package.json, npm install,出错鸟:(

Failed to parse package.json data.

但是又记不住这货的格式,如何是好?

命令行执行express -e projectName会自动建立一个nodejs项目,其实package.json对项目来说不是必须的

看 npm init

npm init npm i node_module_xxx --save

如果不使用–save/–save-dev安装模块的话需要手动更新package.json里的dependencies和devDepandencies,而使用–save/–save-dev就可以自动更新package.json了

建立一个json格式的package.json就可以啦:

echo "{}" > package.json

然后npm install --save/–save-dev 就好了,不过它会提醒你没有几个必要参数,如name,description啥的

npm install --save-dev 命令并不是“懒人的写法”,而是一个方便的工具来帮助管理项目的开发依赖。当你运行 npm install --save-dev <package-name> 时,npm 会自动将该包添加到 package.json 文件中的 devDependencies 部分,并将其安装到 node_modules 目录中。

如果你没有 package.json 文件,npm 会在首次使用 --save-dev 选项时自动生成一个。这其实是一个非常方便的功能,因为它避免了手动创建 package.json 文件的繁琐步骤。

示例

假设你想安装 ESLint 来作为开发依赖:

npm install --save-dev eslint

这样,ESLint 会被安装到 node_modules 目录,并且 package.json 文件会自动更新:

{
  "name": "your-project",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "eslint": "^8.0.0"
  }
}

快速生成 package.json

如果你确实不想手动创建 package.json 文件,可以使用以下命令快速生成:

npm init -y

这个命令会自动生成一个基础的 package.json 文件,你可以在此基础上继续添加其他配置信息。

总之,npm install --save-dev 是一个高效且便捷的方式来管理项目依赖,不必因为这个命令的存在就认为它是一种“懒人的写法”。相反,它是开发者管理项目依赖的一个强大工具。

回到顶部