【前端工程化】NPM、NVM、NPX基础

194 阅读2分钟

NPM、NVM、NPX基础

:one: NPM

Q1::interrobang: NPM 是什麽

nodejs的包管理工具,帮助管理当前OS下的node版本

Q2::writing_hand: NPM 常见命令

【参考】blog.csdn.net/weixin_4214…

【参考】www.cnblogs.com/PeunZhang/p…

【你应该知道的NPM知识都在这!】blog.csdn.net/weixin_3984…

开发环境安装/卸载

npm install module_name -D
npm install module_name --save-dev 写入devDependencies
npm uninstall module_name -D
npm uninstall module_name --save-dev 

生产环境安装/卸载

npm install module_name -S
npm install module_name --save 写入dependencies
npm uninstall module_name -S
npm uninstall module_name --save 

清缓存

npm cache verify
//or
npm cache clean --force

删除项目所有依赖

//======= 第一种=======//
npm uninstall *
//======= 第二种=======//
//1.安装npm包–rimraf
npm install rimraf -g
//2.在cmd指令下,进入所需删除的node_modules文件夹的位置,再输入指令
rimraf node_modules

加载依赖时实时打印日志

npm install -q
//or
npm install -s
//or
npm -loglevel info install

将某个包升级到最新版

npm install vue-loader@latest --save-dev-g

Q3::interrobang: 什么是package.json

npm Docs

www.cnblogs.com/jpwz/p/1241…

  • npm管理的依赖包的描述文件
  • 使用该文件来定义项目信息、配置包依赖关系
  • 在package.json文件中,所有的依赖包都会在 dependencies 和 devDependencies 的配置项中进行管理,它们的意思是:
    • dependencies: 表示生产环境下的依赖管理;build时需要的依赖
    • devDependencies: 表示开发环境下的依赖管理;开发过程中需要的依赖

Q3::interrobang: 什么是package-lock.json

zhuanlan.zhihu.com/p/89093696

  • 记录任意时刻依赖树的文件,固定各依赖版本
  • 它将确保下载你项目并尝试安装依赖项的所有客户端都能够获得完全相同的依赖树。此外这也确保你能够检出先前的提交并复制每个提交的依赖状态。

Q4::gear:如何更新Nexus下的NPM包

  1. 首先将本地npm镜像源改为Nexus仓库地址

    # dfp的Nexus 访问外网有点问题
    npm set registry  http://10.252.97.133:30009/repository/jdf-npm-group/ 
    # 刘伟伟的Nexus 
    npm set registry  http://10.252.98.80:8081/repository/npm-public/ 
    
  2. 登录仓库

    npm adduser
    
  3. 进入到需要发布的文件目录下,发布

    npm publish 
    

:two: NVM

Q1::interrobang: NVM 是什麽

nodejs的版本管理工具,帮助管理当前OS下的node版本

通过nvm来安装或者切换不同的node版本

安装教程 【参考】www.runoob.com/w3cnote/nvm…

Q2::writing_hand: NVM 常见命令

【参考】www.cnblogs.com/yeminglong/…

:three: NPX

【参考】www.ruanyifeng.com/blog/2019/0…

Q1::interrobang: NPX是什麽

帮助执行安装在项目内的安装的模块

使得单独调用项目中的模块时更加方便

Q2::writing_hand: NPX如何使用

Npm可直接使用 npx 命令,不能使用的话则需要手动安装

npm install npx

Q3::green_book: NPX的几种使用场景

  1. 调用项目内模块

    # 不使用npx进行调用 --- 项目的根目录下执行
    $ node-modules/.bin/webpack 
    # 使用npx进行调用
    npx webpack 
    
  2. 临时在项目内使用某一模块,不全局安装模块

    # 会下载没有下载过的模块
    
  3. 使用不同版本的node,使用完成后就删除

    # 比Nvm在管理node版本方面更方便