• npm和yarn使用(官网、安装、命令行、上传自己的包、包版本号详解、更新卸载包、查看所有版本、同等依赖peer、可选依赖optional)


    目录

    npm

    官网

    npm install packageName

    npm i packagename@版本号

    安装git上发布的包

    npm ci

    注意(对比npm i)

    npm outdated

    npm update

    npm init -y

     npm list

    npm list | grep packageName

    npm install --production

    npm view packagename versions

    npm config get registry

    npm config set registry https://registry.npm.taobao.org

    上传自己的包

    npm adduser

    npm publish

    yarn

    中文官网

    安装

    命令行

    yarn add packageName@版本号

    yarn|yarn install

    yarn upgrade packageName@版本号

    yarn remove packageName

    yarn dlx mocha --version


    npm

    NodeJS包管理和分发工具。

    官网

    npm

    npm install packageName

    安装依赖包。

    --S(--save):默认的,用于写入package.json生产环境文件。

    -D(--save-dev):用于写入package.json的开发环境文件。

    -g(-global):全局安装,非-g的都为局部安装。下面是-g安装目录

    mac全局安装目录为/User/你的用户名/.nvm/versions/node/nvm版本/bin

    window全局安装目录为C:\Users\你的用户名\AppData\Roaming\npm\node_modules

    局部安装通过node_modulet/.bin/packageName运行非-g下载的模块命令。

    npm i packagename@版本号

    自动安装指定版本的包,除指定的版本号,其余版本号自动取最新的。

    版本号包括:主版本号.次版本号.补丁号

    package.json中^指锁定主版本号,~指锁定主版本号和次版本号,空指锁定整个版本号,*指取最新版本

    安装git上发布的包

    # 这样适合安装公司内部的git服务器上的项目
    npm install git+https://git@github.com:lurongtao/gp-project.git

    # 或者以ssh的方式
    npm install git+ssh://git@github.com:lurongtao/gp-project.git

    下图红框是通过git安装的包

     

    npm ci

    根据package-lock.json(npm i后生成的文件,用于锁定版本和记录依赖)文件安装依赖。相比npm i速度提升明显。也支持--production参数。

    注意(对比npm i)

    • npm ci 不能用来安装单个依赖,只能用来安装整个项目的依赖
    • npm ci 会检测如果 node_modules 已经存在,则先删除再进行安装操作
    • 不会更新 package.json 或 package-lock.json 文件,整个安装过程是锁死的。
    • package-lock.json 、npm-shrinkwrap.json 文件都不存在会报错
    •  lock 与 package.json 中版本不匹配,npm ci 直接报错中断,而不是更新 lock 文件。

    推荐使用:npm ci --cache .npm --quiet --no-progress 关闭log和进度,可加快下载。

    npm outdated

    显示package.json中锁定版本位下其它版本位不是最新的包。

    npm update

    将package.json中包的锁定版本位下的其它版本位为变为最新的。

    npm init -y

    生成package.json模块配置文件。

    此时通过npm run dev命令相当于命令行中输入./node_modules/.bin/gulp -v。

    注意下面的红色框部分可以去除,运行npm run dev命令时会自动到全局去找对应的文件,没有就会去当前路径下的node_modules中寻找。

    在scripts上写的脚本,通过命令行运行的环境是node的环境。

     npm list

     查看所有安装包的版本和依赖的安装包版本。

    npm list | grep packageName

    查看指定安装包的版本和依赖的安装包版本

    npm install --production

    只安装package.json中的生产环境包。

    npm view packagename versions

    查看指定包的所有版本

    npm cache clean --force

    清除npm缓存(下载出错后一直下载不了时使用)

    npm config get registry

    获取远程仓库路径。

    npm config set registry https://registry.npm.taobao.org

    设置远程仓库地址为淘宝镜像路径,默认的远程仓库地址为http://registry.npmjs.org。

    module.exports = 变量名

    也可以直接在exports上挂载变量,exports为module.exports上的引用(不能直接给exports赋值)

    require('./路径')   不能直接写文件名开头,引入的是export的引用。

    npm install express-generator -g命令安装

    express -h选项可以列出所有可用的命令行选项

    express -e直接生成服务端项目

    上传自己的包

    登陆npm官网,注册账号密码,执行下面命令。注意上传的包要有packgage.json文件。package.json中name为上传的包名,version为版本号,description为readme中介绍。

    npm adduser

    登陆用户。注意远程镜像仓库应该为http://registry.npmjs.org。如果不是需重新设置原创地址并重新登陆。

    npm publish

    上传自己的包。

    yarn

    包管理和分发工具。下面仅列出部分和npm命令行有区别的命令。

    中文官网

    安装

    安装 | Yarn 中文文档

    命令行

    CLI Introduction | Yarn

    yarn add packageName@版本号

    安装依赖包。

    --dev(-D):开发环境依赖,用于写入package.json的开发环境文件。
    --peer(-P):同等依赖,或者叫同伴依赖(当多个包同时依赖于1个包时,需要统一这个包的版本时使用)。
    --optional(-O):可选依赖,如果有一些依赖包即使安装失败,安装替代的包来使项目仍然能够运行。就可以使用optionalDependencies。注意packageName中optionalDependencies会覆盖dependencies中的同名依赖包,所以不要在两个地方都写。

    yarn|yarn install

    安装所有依赖包。

    yarn upgrade packageName@版本号

    升级依赖包到指定版本。

    yarn remove packageName

    卸载指定依赖包。

    yarn dlx mocha --version

    需要yarn2的版本,相当于npx mocha --version。用于调用项目内部安装的模块等。

    nvm、nrm、npx使用(安装、基本命令、参数、curl、wget)_YF-SOD的博客-CSDN博客

  • 相关阅读:
    有10个数字要求分别用选择法和冒泡法从大到小输出 java 数组
    工业智能网关BL110应用之六十: 实现西门子S7-200SMART PLC接入Modbus TCP Server云平台
    Domain Enhanced Arbitrary Image Style Transfer via Contrastive Learning
    【Kotlin 协程】协程的挂起和恢复 ② ( 协程挂起 和 线程阻塞 对比 )
    Vue指令总结
    【学习笔记】ARC146/AGC020/
    EFK部署centos7.9(一)ES单节点部署
    JAVA- Acwing -求 1+2+...+n
    EM算法推导小记
    【python中级】获得计算机的物理CPU核心数量
  • 原文地址:https://blog.csdn.net/AIWWY/article/details/125468108