commonjs包规范与npm

package:包,是在模块(一个js文件)基础上更深一步的抽象,它将某个独立的功能封装起来,用于发布,更新,依赖管理和版本控制。

根据CommonJS包规范,一个包应该具有如下结构:

  • 一个package.json文件应该存在于包顶级目录下
  • 二进制文件应该包含在bin目录下
  • js代码应该包含在lib目录下
  • 文档应该在doc目录下
  • 单元测试应该在test目录下

在node.js中,require()函数可以引入文件模块,也可以引入符合上述规范的包

npm:一个非官方提供的用于下载/安装/查找/更新/删除第三方node.js包的工具,同时还可以执行打包/发布模块,解决模块间依赖性等功能

生成package.json

  • 可以手写package.json文件,也可以使用npm命令来自动生成该文件
    • 使用npm init命令可以在当前目录下生成一个package.json文件
    • 使用 npm help json 命令可以查看package.json文件中所有可用的配置选项

可以使用 npm help 查看npm命令的使用说明

执行/打包模块

  1. 注册/登录npm官网
  2. 使用npm adduser命令注册新账号或登录已有账号
  3. 进入配置完成的包目录,使用 npm publish 命令发布包
  4. 包就在npm官网中啦

下载包

  • npm install <pkg>
  • npm install <pkg> @<version>
  • npm install <pkg> --save | --save-dev
  • npm install

    如果当前应用需要依赖的包很多,可以直接声明在package.json文件中的“dependencies“和“devDependencies“属性下,这样就可以使用npm install一次性全部安装了

本地安装 vs 全局安装

npm install <pkg>
将下载的npm包安装在当前项目工作路径

  • 安装包将保存在./node_modules下(运行npm命令时所在的目录),如果没有node_modules目录,会在当前执行npm命令的目录下生成node_modules目录
  • 可以通过require()来引入本地安装的包

npm install <pkg> -g
将下载的npm包安装在全局:

  • 安装包将保存在/usr/local下或者你node的安装目录下
  • 可以直接在命令行里执行
  • 不能通过require()引入
  • 主要是为了执行这个包里对外发布的可执行文件,在命令行可直接调用

维护包

  • 列出本地目录已经安装的包 npm ls
  • 列出全局目录已经安装的包 npm ls -g
  • 列出已经安装的包的版本信息 npm ls <pkg>
  • 查看已经安装的包的详细信息 npm info <pkg>
  • 更新已经安装的包 npm update <pkg>
  • 卸载已经安装的包 npm uninstall <pkg>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值