node.js
学习地址:nodejs.cn/en/learn
npm(node pachage manager)
概念: node.js的包管理工具
命令: 基于命令行的工具
- 初始化一个新的npm项目,创建package.json文件【项目/包 描述文件】:
npm init - 安装npm包:
npm install XXX 最新版本 npm install xxx@2.6.0 指定版本
安装开发时候的依赖【webpage vite rollup】,不被打包成为项目
npm install xxx --save-d简写npm install xxx -D"devDependencies": { "webpack" : "^4.44.2", "webpack-cli" : "^3.3.12" },安装正式时候的依赖【vue,VueX,vue-router,md5,elements-plus】,打包成为项目
npm install xxx --save简写npm install xxx"dependencies": { "md5": "^2.3.0", "vue":"^3.5.11" },编写插件/npm包的人员使用:对等依赖防,止安装重复插件
"dependencies": { "vite-plugn-xm": "^2.3.0",//使用了vite在下面吗必须有vite插件 "vue":"^3.5.11" }, "peerDependencies": { "vite": "^2.7.13" }npm install xxx发生了什么?
juejin.cn/post/726111…- 安装的依赖都存放的node_modules文件夹中
- 安装排序,.bin > @xxx > abcd
- 扁平化的方式安装【广度优先的算法下载依赖】
- 遍历依赖树时,npm先处理根目录所有的依赖,然后逐层处理依赖下的依赖
【 例如vue依赖很多包,这些包都存在vue文件夹中,npm会逐层处理,当然先处理和vue平级的依赖 】 - 在处理每个依赖时npm会检测该依赖的版本号是否符合依赖树中其他依赖的版本要求,如果不符合,尝试安装其他版本的依赖
- 卸载npm包:
npm uninstall xxx - 获取node.js的所有信息:
npm config list - 获取镜像源:
npm get registry - 设置镜像源:
npm config set registry http://https://registry.npmmirror.com/ - 查找全局安装的可执行文件:
npm ls -g
安装小满工具:npm i xmzs -g
查看版本号:mmp -V
查看当前的镜像源:mmp current
切换镜像源:mmp use
添加镜像源:mmp add
npx和npm的区别: npx执行node_modules的任何命令:执行查找顺序:本地-全局-下载
发布npm包到npmjs:
会查看package.json包,name和版本不能再npm网站注册过。
- 注册npm账号:
npm adduser - 登录npm:
npm login - 发布npm:
npm publish
搭建npm私服:
-
安装私服:
npm install verdaccio -g -
查看私服的命令:
verdaccio --help- 启动私服:
verdaccio - 更改端口:
verdaccio --listen 5000 - 更改配置文件:
verdaccio --config [path] - 切换npm下载源:
npm set registry http://localhost:4873/
- 启动私服:
npm私服发布步骤:
- 在cmd启动私服
verdaccio - 打开一个终端【否则会关闭私服】
创建用户:npm adduser --registry http://localhost:4873/ - 在要发布的项目终端登录
登录用户:npm login --registry http://localhost:4873/
发布项目:npm publish --registry http://localhost:4873/
模块化:
遵循CommonJS和esm【前端使用的import和export】
- CommonJS: