node学习之前置知识点

494 阅读2分钟

这是我参与8月更文挑战的第21天,活动详情查看:8月更文挑战

package-lock.json文件

  • lock 顾名思义就是用来锁定依赖包版本的。
  • package-lock.json 文件会 固化 当前安装的每个软件包的版本,当运行 npm install的时候,会安装固定好的确切的版本。

npm 包相关命令

  • 执行 npm list
  • 仅获取顶层的软件包(即在package.json文件中列出的软件包),则执行 npm list --depth=0
  • 查看软件包在npm仓库上的最新可用版本 npm view [package_name] version
  • 使用 @ 语法,可以用来安装npm软件包的旧版本。例如:npm install less-loader@5.0.0
  • 如果有新的次版本或者补丁版本,并且执行了 npm update 命令,则已安装的版本会被更新,并且 package-lock.json文件也会被新版本填充。但是package.json文件保持不变。
  • 运行 npm outdated 命令,可以发觉软件包的新版本。
  • 若要将所有软件包更新到新的主版本,则全局地安装 npm-check-updates 软件包,然后运行 ncu -u 这会升级 package.json 文件的 dependencies 和 devDependencies 中的所有版本,以便 npm 可以安装新的主版本。(项目中强烈不建议,执行此操作,谨慎操作。除非项目要求整体版本升级)
  • 执行 npm uninstall 卸载软件包。
  • 当使用 npm install <package-name> 安装 npm 软件包时,是将其安装为依赖项。该软件包会被自动地列出在 package.json 文件中的 dependencies 列表下(在 npm 5 之前:必须手动指定 --save)。
  • 当添加了 -D 或 --save-dev 标志时,则会将其安装为开发依赖项(会被添加到 devDependencies 列表)。
  • 开发依赖是仅用于开发的程序包,在生产环境中并不需要。 例如测试的软件包、webpack 或 Babel。
  • 当投入生产环境时,如果输入 npm install 且该文件夹包含 package.json 文件时,则会安装它们,因为 npm 会假定这是开发部署。此时,我们可以设置--production标志,npm install --production 来避免安装开发依赖项。

npx

  • npx 是一个非常强大的命令,从 npm 的 5.2 版本(发布于 2017 年 7 月)开始可用。
  • npx 可以运行使用 Node.js 构建并通过 npm 仓库发布的代码。
  • 运行 npx commandname 会自动地在项目的 node_modules 文件夹中找到命令的正确引用,而无需知道确切的路径,也不需要在全局和用户路径中安装软件包。
  • npx 无需先安装命令即可运行命令。常见的有:
    • npx @vue/cli create my-vue-app
    • npx create-react-app my-react-app
  • 也可以使用不同版本的node运行代码,例如:
    • npx node@10 -v #v10.18.1
    • npx node@12 -v #v12.14.1
  • npx 并不限制使用 npm 仓库上发布的软件包。 例如: npx https://gist.github.com/zkat/4bc19503fe9e9309e2bfaa2c58074d32