在 npm 上发布 package

一、相关 package.json 介绍

返回目录

{
  "name": "xxx", //项目名称
  "version": "0.1.0", //版本
  "main": "index.js", // 入口文件
  "description": "npm demo", //项目描述
  "license": "GPL-3.0", //开源许可
    "author": { //作者信息
    "name": "wwwmewww" //名字
  },
  "keywords": [ //关键字,便于在 npm 上搜索到
    "js",
  ],
  "repository": { //仓库地址,本人仓库啥也没有
    "type": "git",
    "url": "git+https://github.com/wwwmewww/xxx.git"
  },
  "bugs": { //bug提交地址
    "url": "https://github.com/wwwmewww/xxx/issues"
  },
  "homepage": "https://github.com/wwwmewww/xxx#readme", //主页
}

编写在文件中引用的包

返回目录

  1. 包的入口文件
    //index.js
    module.exports = function(){
      console.log('hello');
    }
    
  2. 配置 package.json
    //package.json
    {
    	"main": "index.js", // 配置好入口文件
    }
    
  3. 引用并执行包
    const mypack = require('mypack');
    mypack(); //执行包,输出:hello
    

编写能用命令行执行的包

返回目录

  1. 包的入口文件 index.js
    #!/usr/bin/env node
    console.log('hello world')
    
  2. 配置 package.json
    {
    	"bin": {
    	  "my-cli": "./index.js"
    	}
    }
    
  3. 用 npm link 测试
    $ npm link #成功之后就可以执行 my-cli 命令
    $ my-cli #运行 就能看见 hello world 输出
    
    如果执行 npm link 报错,可以把 npm_global 目录下的相关的文件都删掉再试

3. 推荐包

返回目录

包名说明
commander处理命令行参数
inquirer处理命令行交互
chalk改变命令行输出颜色
cross-spawnNode.js 的子进程(child_process)模块下有一 spawn 函数的跨平台写法
envinfo输出环境信息
fs-extrafs的扩展库
hyperquest将http请求转化为流输出
semver版本格式化和计算的库
tar-pack压缩和解压
tmp用户临时文件资源的管理,可用 tmp-promise 代替
validate-npm-package-name检查package的name是否合法

参考链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值