前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >nodejs笔记2 包管理 npm

nodejs笔记2 包管理 npm

作者头像
路过君
发布2022-04-13 13:37:34
4400
发布2022-04-13 13:37:34
举报
文章被收录于专栏:路过君BLOG from CSDN

即nodejs第三方模块

npm

包管理工具

切换包镜像源

淘宝源

npm config set registry=https://registry.npm.taobao.org/

nrm 镜像源管理工具

  • 安装

npm i nrm -g

  • 查看所有可用镜像源

nrm ls

  • 切换镜像源

nrm use taobao

i5ting_toc MD转HTML工具

  • 安装

npm i i5ting_toc -g

  • 使用

i5ting_toc -f readme.md -o

发布npm包

  • 登录npm

npm login

  • 发布

npm publish

  • 删除(只能删除72小时内发布的包,删除的包24小时内不允许重复发布)

npm unpublish pkgname --force

模块加载

require(module_name)

  • 优先加载缓存
  • 内置模块优先级最高,node_modules中有内置模块重名模块不会被加载
  • 加载自定义模块是必须指定以./或…/开头的路径,否则将当作内置模块或第三方模块加载
  • 自定义模块文件加载顺序:
  1. 确切文件名对应文件
  2. 补.js扩展名
  3. 补.js扩展名
  4. 补.node扩展名
  5. 报错
  • 如果模块标识符不是内置模块,也没有./或…/开头,则从当前模块的父目录开始,尝试从/node_modules文件夹加载第三方模块
  • 如果当前目录没有找到第三方模块,则移动到上一层目录查找/node_modules,直到根目录
  • 模块标识符是目录时加载顺序:
  1. 目录下查找package.json文件,寻找main属性作为加载入口
  2. 没有package.json,或main不存在,则尝试加载目录下index.js
  3. 没有index.js, 报错

package-lock.json

记录node_modules目录下每个包的下载信息(包名,版本,下载地址)

package.json

包管理配置文件

  • 项目基本信息(名称,版本,描述)
  • main(包的入口,通过require导入包时,自动导入main指向的js文件,因此自定义包时,需要通过入口js文件暴露其他js文件模块
  • 依赖的包(开发,部署各自所依赖的包)
  1. 创建包管理配置文件

npm init -y

  1. 安装包(自动下载包,并将包信息记录到package.json,如果只需要安装到开发环境,例如webpack,后面追加参数–save-dev)

npm install pkgname

  1. 一次性安装所有包(安装package.json中记录的所有包)

npm install

  1. 卸载包(自动删除package.json中依赖信息)

npm uninstall pkgname

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022/01/22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • npm
    • 切换包镜像源
      • nrm 镜像源管理工具
        • i5ting_toc MD转HTML工具
          • 发布npm包
          • 模块加载
          • package-lock.json
          • package.json
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档