当前位置: 首页 > news >正文

nodejs 编程基础01-NPM包管理

1:npm 包管理介绍

npm 是nodejs 的包管理工具,类似于java 的maven 和 gradle 等,用来解决nodejs 的依赖包问题
使用场景:1. 从NPM 服务骑上下载或拉去别人编写好的第三方包到本地进行使用2. 将自己编写代码或软件包发布到npm 服务器供他人使用

更换NPM镜像源

设置淘宝的镜像源
npm config set registry  https://registry.npm.taobao.org   //这个可能已经失效
可以使用:
npm config set registry https://registry.npmmirror.com
还原官方镜像源
npm config delete registry

初始化项目

在项目目录下 执行
npm init 
使用npm install koa 安装 koa 框架 执行完毕之后会当前目录下产生一个模块,在自动生成的node_modeles 文件夹中
在模块中使用koa 需要在代码中写如下的代码:
const koa = require('koa');C:\Users\Administrator\Desktop\xmall>npm install koa
npm error code CERT_HAS_EXPIRED
npm error errno CERT_HAS_EXPIRED
npm error request to https://registry.npm.taobao.org/koa failed, reason: certificate has expired解决办法临时忽略ssl证书验证:作为临时解决方案,你可以通过设置npm配置来忽略SSL证书验证。请注意,这种方法会降低安全性,不推荐作为长期解决方案。npm config set strict-ssl false安装完所需的包后,最好将此设置还原,以保持更高的安全性npm config set strict-ssl true![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/13cd322f5b5d4834ace122b5fb361091.png)

执行完成之后查看挡墙目录
在这里插入图片描述
在这里插入图片描述

本地安装与全局安装

npm 安装包分本地安装和全局安装
默认为本地安装
如果需要全局安装 这需要添加 -g 参数
npm install express-generator -g   //生成express 为服务框架的nodejs 后端项目结构
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/f57ac79acdb64a8aa571274f2d1f0395.png)

安装express脚手架出现如下错误:npm WARN deprecated mkdirp@0.5.1: Legacy versions of mkdirp are no longer …

  1. 在电脑Windows搜索栏搜索Windows PowerShell,并且以管理员身份运行;
    在这里插入图片描述
  2. 执行命令
PS C:\Users\Administrator> set-ExecutionPolicy RemoteSigned
PS C:\Users\Administrator> get-ExecutionPolicy
RemoteSigned
PS C:\Users\Administrator> npm install -g cnpm --registry=https://registry.npm.taobao.org
changed 66 packages in 14s
changed 66 packages in 13s
PS C:\Users\Administrator> cnpm install express-generator -g
Downloading express-generator to D:\Programs\nodejs\node_modules\express-generator_tmp
Copying D:\Programs\nodejs\node_modules\express-generator_tmp\.store\express-generator@4.16.1\node_modules\express-generator to D:\Programs\nodejs\node_modules\express-generator
Installing express-generator's dependencies to D:\Programs\nodejs\node_modules\express-generator/node_modules
[1/5] commander@2.15.1 installed at node_modules\.store\commander@2.15.1\node_modules\commander
[2/5] sorted-object@2.0.1 installed at node_modules\.store\sorted-object@2.0.1\node_modules\sorted-object
[3/5] ejs@2.6.1 installed at node_modules\.store\ejs@2.6.1\node_modules\ejs
[4/5] mkdirp@0.5.1 installed at node_modules\.store\mkdirp@0.5.1\node_modules\mkdirp
[5/5] minimatch@3.0.4 installed at node_modules\.store\minimatch@3.0.4\node_modules\minimatch
deprecate mkdirp@0.5.1 Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
All packages installed (9 packages installed from npm registry, used 569ms(network 566ms), speed 373.4KB/s, json 9(126.63KB), tarball 84.72KB, manifests cache hit 0, etag hit 0 / miss 0)
[express-generator@4.16.1] link D:\Programs\nodejs\express@ -> D:\Programs\nodejs\node_modules\express-generator\bin\express-cli.js
创建xmall 项目
PS C:\Users\Administrator> express xmallwarning: the default view engine will not be jade in future releaseswarning: use `--view=jade' or `--help' for additional optionscreate : xmall\create : xmall\public\create : xmall\public\javascripts\create : xmall\public\images\create : xmall\public\stylesheets\create : xmall\public\stylesheets\style.csscreate : xmall\routes\create : xmall\routes\index.jscreate : xmall\routes\users.jscreate : xmall\views\create : xmall\views\error.jadecreate : xmall\views\index.jadecreate : xmall\views\layout.jadecreate : xmall\app.jscreate : xmall\package.jsoncreate : xmall\bin\create : xmall\bin\wwwchange directory:> cd xmallinstall dependencies:> npm installrun the app:> SET DEBUG=xmall:* & npm start  

根据上面的提示:切换到xmall 目录下
PS C:\Users\Administrator> cd .\xmall
PS C:\Users\Administrator\xmall> npm install
PS C:\Users\Administrator\xmall> SET DEBUG=xmall:* & npm start 这个命令要分开执行否则会出现如下的错误
SET DEBUG=xmall:*
npm start
在这里插入图片描述
当 npm start 执行完成 出现如下的内容 表示后端基于 express的脚手架搭建项目完成
在这里插入图片描述
在浏览器地址栏目页面中输入:http://127.0.0.1:3000 会出现如下的显示,表示齐纳后端可以正常访问
在这里插入图片描述

生产依赖和开发依赖

使用 --save-dev 表示开发依赖
使用 --save 表示生产依赖
都会被保存到 package.json 的 dependencies 中

其他npm 命令

  1. npm uninstall <模块名> [-g] 卸载本地/全局模块
  2. npm list [-g] 查看已经安装的本地或者全局模块
  3. npm update <模块名> [-g] 更新本地/全局模块
  4. npm search <模块名> 搜索模块
  5. npm publish 发布模块到npm仓库
  6. npm unpublish <模块名>@版本号 撤销发布模块到npm仓库
  7. npm config get 读取配置
  8. npm config set 设置配置
  9. npm config delete 设置配置
    10 .npm run <命令> 执行package 中 scripts 定义的命令

yarn 包管理器介绍

PS C:\Users\Administrator\xmall> cnpm install yarn -g
Downloading yarn to D:\Programs\nodejs\node_modules\yarn_tmp
Copying D:\Programs\nodejs\node_modules\yarn_tmp.store\yarn@1.22.22\node_modules\yarn to D:\Programs\nodejs\node_modules\yarn
Installing yarn’s dependencies to D:\Programs\nodejs\node_modules\yarn/node_modules
Run 1 script(s) in 101ms.
All packages installed (used 105ms(network 2ms), speed 0B/s, json 0(0B), tarball 0B, manifests cache hit 0, etag hit 0 / miss 0)
[yarn@1.22.22] link D:\Programs\nodejs\yarn@ -> D:\Programs\nodejs\node_modules\yarn\bin\yarn.js
[yarn@1.22.22] link D:\Programs\nodejs\yarnpkg@ -> D:\Programs\nodejs\node_modules\yarn\bin\yarn.js

yarn的常用命令

  1. yarn [global] remove <模块名> 卸载本地或全集模块
  2. yarn [global] upgrade <模块名> 更新本地或全集模块
  3. yarn [global] upgrade <模块名> 安装本地或全集模块
  4. yarn config get 读取配置
  5. yarn config set 设置配置
  6. yarn config delete 删除配置
  7. yarn run <命令> 执行package 中 scripts 定义的命令
http://www.lryc.cn/news/611430.html

相关文章:

  • 《计算机“十万个为什么”》之 面向对象 vs 面向过程:编程世界的积木与流水线
  • 【android bluetooth 协议分析 01】【HCI 层介绍 30】【hci_event和le_meta_event如何上报到btu层】
  • 零基础人工智能学习规划之路
  • 电路基础相关知识
  • HBM Basic(VCU128)
  • 翻译的本质:人工翻译vs机器翻译的核心差异与互补性
  • NumPy字符串与数学函数全解析:从基础到实战应用
  • 3. 为什么 0.1 + 0.2 != 0.3
  • ubuntu自动重启BUG排查指南
  • 前端遇到页面卡顿问题,如何排查和解决?
  • C语言:20250805学习(文件预处理)
  • 集成学习与随机森林:从原理到实践指南
  • 高通平台Wi-Fi Display学习-- 调试 Wi-Fi Display 问题
  • 【Git】实现使用SSH方式连接远程仓库时的免密操作
  • 17.8 ChatGLM3/CogVLM一键部署指南:32K长文本+多模态实战,零基础搞定企业级模型微调(附完整代码)
  • 机器学习算法系列专栏:决策树算法(初学者)
  • systemui 的启动流程是怎么样的?
  • VUE2 学习笔记 合集
  • 系统设计入门:成为更优秀的工程师
  • (ZipList入门笔记一)ZipList的节点介绍
  • 【面试场景题】日志去重与统计系统设计
  • 【STM32】HAL库中的实现(三):PWM(脉冲宽度调制)
  • 浮雕软件Artcam安装包百度云网盘下载与安装指南
  • 内部排序算法总结(考研向)
  • [验证回文串]
  • C#案例实战
  • LeetCode——2411. 按位或最大的最小子数组长度
  • MCP与Function Calling
  • MySQL间隙锁在查询时锁定的范围
  • MinIO02-Docker安装