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
执行完成之后查看挡墙目录
本地安装与全局安装
npm 安装包分本地安装和全局安装
默认为本地安装
如果需要全局安装 这需要添加 -g 参数
npm install express-generator -g //生成express 为服务框架的nodejs 后端项目结构

安装express脚手架出现如下错误:npm WARN deprecated mkdirp@0.5.1: Legacy versions of mkdirp are no longer …
- 在电脑Windows搜索栏搜索Windows PowerShell,并且以管理员身份运行;
- 执行命令
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 命令
- npm uninstall <模块名> [-g] 卸载本地/全局模块
- npm list [-g] 查看已经安装的本地或者全局模块
- npm update <模块名> [-g] 更新本地/全局模块
- npm search <模块名> 搜索模块
- npm publish 发布模块到npm仓库
- npm unpublish <模块名>@版本号 撤销发布模块到npm仓库
- npm config get 读取配置
- npm config set 设置配置
- 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的常用命令
- yarn [global] remove <模块名> 卸载本地或全集模块
- yarn [global] upgrade <模块名> 更新本地或全集模块
- yarn [global] upgrade <模块名> 安装本地或全集模块
- yarn config get 读取配置
- yarn config set 设置配置
- yarn config delete 删除配置
- yarn run <命令> 执行package 中 scripts 定义的命令