NPM(Node Package Manager)
• CommonJS包规范是理论,NPM是其中一种实践。
• 对于Node而言,NPM帮助其完成了第三方模块的发布、安装和依赖等。借助NPM,Node与第三方模块之间形成了很好的一个生态系统。
NPM命令
• npm –v – 查看版本
• npm
– 帮助说明
• npm search 包名
– 搜索模块包
• npm init
– 创建文件
• npm install 包名
– 在当前目录安装包 • npm install 包名 –g – 全局模式安装包
• npm remove 包名
– 删除一个模块
• npm install 文件路径
– 从本地安装
• npm install 包名 –registry=地址
– 从镜像源安装
• npm config set registry 地址
– 设置镜像源
NPM搜索
通过npm下载的包都放到node_modules文件夹中
我们通过npm下载的包,直接通过包名引入即可
node在使用模块名字来引入模块时,它会首先在当前目录的node_modules中寻找是否含有该模块
如果有则直接使用,如果没有则去上一级目录的node_modeles中寻找
如果有则直接使用,如果没有则再去上一级目录寻找,直到找到为止
直到找到磁盘的根目录,如果依然没有,则报错
补充说明:
包(package)简介
# CommonJS的包规范允许我们将一组相关的模块组合到一起,形成一组完整的工具
# CommonJS的包规范由包结构和包描述文件两个部分组成
# 包结构
– 用于组织包中的各种文件
# 包描述文件
– 描述包的相关信息,以供外部读取分析
包结构
包实际上就是一个压缩文件,解压以后还原为目录。符合规范的目录,应该包含如下文件:
– package.json 描述文件
– bin 可执行二进制文件
– lib js代码
– doc 文档
– test 单元测试
包描述文件
• 包描述文件用于表达非代码相关的信息,它是一个JSON格式的文件 – package.json, 位于包的根目录下,是包的重要组成部分。
• package.json中的字段
– name、description、version、keywords、
maintainers、contributors、bugs、
licenses、repositories、dependencies、
homepage、os、cpu、engine、builtin、
directories、implements、scripts、author、
bin、main、devDependencies