写在最前:跟着视频学习只是为了在新手期快速入门。想要学习全面、进阶的知识,需要格外注重实战和
官方技术文档
,文档建议作为手册使用
系列文章
- 【Node.js】笔记整理 1 – 基础知识
- 【Node.js】笔记整理 2 – 常用模块
- 【Node.js】笔记整理 3 – npm
- 【Node.js】笔记整理 4 – node版本管理工具 nvm
- 【Node.js】笔记整理 5 – Express框架简单入门
- 【Node.js】笔记整理 6 – MongoDB
- 【Node.js】笔记整理 7 – mongoose
使用命令npm init -y
可以快速创建package.json文件
1、npm包相关命令
npm命令(以下 i 都是 install 的简写) | 功能 |
---|---|
npm install <包名>、npm i <包名> | 下载对应包,默认下载最新版本 |
npm uninstall <包名>、npm r <包名>、npm remove <包名> | 卸载包 |
npm i -S <包名>、npm i —save <包名>(默认) | 安装在生产环境下,包信息存储在package.json 的dependencies 属性下 |
npm i -D <包名>、npm i —save–dev <包名> | 安装在开发环境下,包信息存储在package.json 的devDependencies 属性下 |
npm i -g nodemon | 使用 -g 进行全局安装,这将会让你在命令行任何位置都能够使用这个包 |
npm root -g | 查看全局安装包的位置,注意全局安装包不是安装在你项目里的 |
**npm i **、npm install | 根据package.json 、package-lock.json 安装该项目所需的所有依赖 |
npm i <包名>@x.xx.xx | 安装指定版本的包 |
npm uninstall <包名>@x.xx.xx | 卸载指定版本的包 |
**npm r -g <包名> **、npm remove -g <包名> | 全局卸载包 |
npm init | 初始化 |
npm run <别名> | 运行别名 |
2、require引入npm模块
3、环境变量path
将文件路径复制到我的电脑 --> 属性 --> 高级系统设置 --> 环境变量 --> 用户变量 --> PATH
中,就可以在命令行任意位置使用该命令。这是因为配置到环境变量PATH中后,使用命令时就会去环境变量中查找路径
4、npm配置命令别名
在package.json
文件中的"script配置项下"
,按照这种语法配置别名:"别名": " 指令 "
比如:
{
"script": {
"serve": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
}
}
其实有些包在安装时候或者项目初始化时候,一些别名就已经配置好了
5、镜像源
因为npm包放在外网服务器,有些时候下载可能会比较慢甚至中断下载报警,所以为了提高下载速度,有些时候需要用到国内一些公司部署的镜像源、比如淘宝源
5.1、安装镜像源
安装淘宝源:
npm install -g cnpm --registry=http://registry.npmmirror.com
指令其实就是把npm换成cnpm就行,其他镜像源的安装参照这个就行
5.2、配置镜像源
1、直接配置:
npm config set registry http://registry.npmmirror.com
-
安装nrm
npm i -g nrm
-
修改镜像
nrm use taobao
-
npm config list
-
查看配置的镜像源
# 方法一:只有地址 npm config get registry # 方法二:名字+地址 nrm ls
6、yarn 包管理工具
yarn是Facebook(现mate)推出的JavaScript包管理工具
它的优点:
安装
npm i -g yarn
启动项目时候,npm需要npm run dev
,yarn只需要yarn dev
功能 | 指令 |
---|---|
初始化 | yarn init、yarn init -y |
安装 | yarn add <包名>、yarn add <包名> —dev生产依赖、**yarn global add <包名>**全局安装 |
删除 | yarn remove <包名>、**yarn global remove <包名>**全局删除 |
安装项目依赖 | **yarn ** |
运行命令别名 | yarn <别名> |
7、包管理工具的选择、判定
个人项目无所谓
公司项目:
8、npm包的发布、更新、删除
8.1 制作并发布包
/**
* vertify if two one-dimensional arrays are identical
* @param {Array} arr1
* @param {Array} arr2
* @returns Boolean
*/
function isArrEqual(arr1, arr2){
return arr1 && arr2 && arr1.length === arr2.length && arr1.every((item) => arr2.includes(item))
}
/**
* array deduplication
* @param {Array} arr1
*/
function removeDuplicates(arr){
return [...new Set(arr)]
}
module.exports = {
isArrEqual,
removeDuplicates
}
8.2、 更新包
8.3、删除包
删除命令:npm unpublish
、npm unpublish --force
9、其他语言或者OS的包管理工具
语言 | 包管理工具 |
---|---|
PHP | composer |
Python | pip |
Java | maven |
Go | go mod |
JavaScript | npm / yarn / cnpm / … |
Ruby | rubyGems |
操作系统 | 包管理工具 |
---|---|
Centos | yum |
Ubuntu | apt |
MacOs | homebrew |
Windows | chocolatey |
原文地址:https://blog.csdn.net/liushi21/article/details/134684689
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_33204.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!