package代表了一组特定功能的源码集合。
管理包的应用软件,可以对包进行下载安装,更新,删除,上传等操作
借助包管理工具,可以快速开发项目,提高开发效率
Node Package Manager :node的包管理工具
node在安装的时候会自动安装npm,npm -v可以查看版本号测试,显示版本号就是安装成功。
npm的基本使用
创建一个空目录,以此目录为工作目录启动命令行工具,执行npm init
npm init 命令的作用是将文件夹初始化为一个包,交互式创建package.json文件
package.json是包的配置文件,每个包都必须要有package.json
- 初始化过程注意事项
- package name不能使用中文,大学,默认是文件夹的名称,所以文件夹名也不能是中文或者大写
- version要求x.x.x形式定义,x必须是数字,默认值是1.0.0
- ISC整数与MIT证书功能上是相同的
- package.json可以手动创建或修改
- 使用npm init -y 或者npm init --yes极速创建package.json
搜索包名
命令行 npm s/search 关键字
(常用)网站搜索 npmjs
通过实践的不断积累,通过看文章看项目去学习去积累
下载安装包
npm install 和npm i命令安装包
运行之后会新增两个资源,node_modules文件夹存放下载的包
package-lock.json包的锁文件,用来锁定包的版本
安装uniq之后,uniq就是当前这个包的一个依赖包,有时会简称为依赖
eg:创建一个a包,a中安装了b包,b是a的一个依赖包或者说a依赖于b
require导入nnpm包基本流程
在当前文件夹下node_modules中寻找同名的文件夹
在上级目录下node_modules中寻找同名的文件夹,直至找到磁盘根目录
生产环境与开发环境
生产环境是专门用来写代码的环境,开发环境一般只能程序员自己访问
生产环境是项目代码正式运行的环境,一般是正式的服务器电脑,生产环境一般每个客户都可以访问
生产依赖和开发依赖
安装时设置选项来区分依赖的类型
生产依赖的命令
npm i -S uniq
npm i --save uniq
-S等效于–save,-S是默认选项
包信息保存在package.json中dependencies属性
开发依赖的命令
npm i -D less
npm i --save-dev less
-D等效于–save-dev
包信息保存在package.json中devdependencies属性
开发依赖是只在开发阶段使用的依赖包,而生产依赖是开发阶段和最终上线运行阶段都会用到的依赖包
npm全局安装
全局安装
说明
- 全局安装的命令不受工作位置目录的影响
- 可以通过npm root -g可以查看全局安装包的位置
- 不是所有的包都适合全局安装,只有全局类的工具才适合,可以通过查看包的官方文档来确定安装方式
修改windows执行策略
- 以管理员身份打开powershell命令行
- 键入命令 set-ExecutionPolicy remoteSigned
win10底部右键搜索显示搜索框,搜索框输入powershell,右键管理员身份运行。
修改完执行策略之后测试
或者更换命令行的类型,也可以修改成别的方式
环境变量Path
npm安装包的所有依赖
npm i可以依据package.json和package-lock.json的依赖声明安装目录依赖
npm i
npm install
node_modules文件夹大多数情况下都不会存入版本库,因为它体积太大了
一般拉项目之后是没有这个文件夹的,项目不能跑,需要安装所有依赖才可以,npm i就很重要。
一些常见的命令
- 安装全局依赖 npm i
- 安装指定版本的包 npm jquery@1.11.1
- 删除依赖
- 局部删除
- npm remove uniq
- npm r uniq
- 全局删除
- npm remove -g nodemon
npm配置命令别名
在package.json中配置script属性
配置完成后可以使用别名执行命令,然后cmd终端运行(powershell运行报错了)
start别名使用时可以省略run
- npm start是项目中的一个常用命令,一般用来启动项目。
- npm run有自动向上级目录查找的特性,跟require函数也一样(不是当前文件夹目录也可以运行)
- 对于陌生的项目,我们可以通过查看scripts属性来参考项目的一些操作。
JavaScript包管理工具
特点:安装速度超快,超级安全,可靠。
npm安装yarn
yarn常用命令
- 初始化 yarn init / yarn init -y
- 安装包 yarn add uniq生产依赖/yarn add less --dev 开发依赖/yarn global add nodemon全局安装
- 删除包 yarn remove uniq删除项目依赖包/yarn global add nodemon全局删除包
- 安装项目依赖yarn
- 运行命令别名 yarn 名字
安装yarn之后在vscode终端初始化报错:
错误: 找不到或无法加载主类 init
查看一些文章修改了java的jdk(版本依旧没变),最后发现在系统的cmd中是可以正常运行的
全局安装的包不可用,yarn全局安装包的位置可以通过yarn global bin来查看。
可以通过yarn config list 查看yarn的配置项
个人项目
随便选择
公司项目
根据项目代码来选择,可以通过锁文件判断项目的包管理工具
npm的锁文件为package-lock.json
yarn的锁文件为yarn.lock
切记包管理工具不要混用
cnpm是一个淘宝构建的npmjs.com的完整镜像,也叫淘宝镜像
cnpm服务器部署在国内阿里云服务器萨格,可以提高 包的下载速度。
官方也提供了一个全局工具包cnpm,操作命令与npm大体相同。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cjTZZk64-18)(11.png)]
安装
通过npm来安装cnpm工具
操作命令
- 初始化 cnpm init
- 安装包 cnpm i uniq;cnpm i -S uniq;cnpm i -D uniq;cnpm i -g nodemon;
- 安装项目依赖 cnpm i
- 删除 cnpm r uniq
npm配置淘宝镜像
- 直接配置
npm install -g cnpm --registry=https://registry.npmmirror.com - 工具配置
- 使用nrm配置npm的镜像地址 npm registry manager
- 修改镜像
nrm use taobao - 检查是否配置成功(选做)
npm connfig list
检查register地址是否为npmmirror,如果是则表明成功
补充说明:
1.建议使用工具配置进行镜像配置,因为后续修改起来比较方便
虽然cnpm可以提高速度,但是npm可以通过淘宝镜像进行加速,所以npm的使用率还是高于cnpm
创建与发布
将自己开发的工具包发布到npm服务上,方便自己和其他开发者使用。
- 创建文件夹,创建文件index.js,在文件中声明函数,使用modules.exports暴露
- npm初始化工具包,package.json填写包的信息(包的名字是唯一的)
- npmjs上注册账号
- 修改为官方的官方镜像(命令行中运行nrm use npm)
- 命令行下npm login填写相关的用户信息
- 命令行下npm publish提交包
更新包
后续可以对发布的包进行更新
- 更新包中的代码
- 测试代码是否可用
- 修改package.json的版本号
- 发布更新
npm publish
到此这篇node 包管理(node包管理工具有哪些)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/hd-nodejs/58591.html