前置准备:变更依赖包源
安装nrm
源管理工具并使用私有源http://127.0.0.1:9999/repository/NPM-repo-group/
npm config set registry https://registry.npm.taobao.org
npm i -g nrm
nrm add myNpm http://127.0.0.1:9999/repository/NPM-repo-group/
nrm use myNpme
创建npm包
先创建对应包的文件夹,然后使用以下命令生成 package.json 配置信息
npm init
输入命令后会出现提示输入包名称(默认会以所在文件名来命名),可以一直按回车,然后打开文件编辑,基础配置如下:
必要字段
-
name
:包名(全部小写,没有空格,可以使用下划线或者横线),事前需要验证一下是否已经重名的包存在,验证方法是在命令行里使用yarn
(yarn add 包名)或npm
来安装一下,看是否已经存在同名的包。 -
version
: 包版本号(默认1.0.0) -
私有源的包名可以统一以
my-
为开头
其他字段
-
author
:作者 -
main
:程序入口文件,一般直接为 index.js -
description
:描述信息,有助于搜索 -
keywords
:[] 关键字,有助于在人们使用 npm search 搜索时发现项目 -
scripts
:脚本,默认是一个空的 test -
license
:默认为 MIT -
bugs
:当前项目的一些错误信息,如果有的话可列出 -
dependencies
:在生产环境中需要用到的依赖 -
devDependencies
:在开发、测试环境中用到的依赖 -
repository
:代码仓库
包文件基础结构
index.js
module['exports'] = require('./lib')
/lib/index.js
export default {
value: '', // 自定义值
send: function() {}, // 自定义方法
......
}
包发布流程
将npm源切换为NPM-repo-group
npm set registry http://127.0.0.1:9999/repository/NPM-repo-group/
登录npm账号(部分npm版本直接使用npm login
命令登录时不生效)
npm login -registry http://127.0.0.0:9999/repository/NPM-repo-hosted/
或
npm login --registry=http://127.0.0.7:9999/repository/NPM-repo-hosted/
发布程序包到NPM-repo-hosted
npm publish -registry http://127.0.0.0:9999/repository/NPM-repo-hosted/
- 当发布成功后,会返回提示,内容是你的包名称前会有个“+”号,后面会@版本号
- 发布前,要确认包版本号比上一个版本号要高,需要修改
package.json
中的version
- 当出现错误时有几种情况需要检查:
- 1是否包名称已被人使用(npmjs网上)
- 2是账号是否失去发布权限
- 3是发布的源位置上并没有该账号
发布前对包进行测试,验证包正确性
将编写好的包放进项目的node_module
文件夹里面,然后在你的项目里面就可以直接引用:
import pag from 'npm包名'
或
var pag = require('npm包名');
测试完确定没有什么bug之后再执行 npm publish 进行发布
包说明文档:README.md
需要在包里面添加一个README.md
文件,然后编写该包的使用文档,编写语法具体参考makedown
语法
发布时会被忽略的文件
.git
CVS
.svn
.hg
.lock-wscript
.wafpickle-N
.*.swp
.DS_Store
._*
npm-debug.log
.npmrc
node_modules
config.gypi
*.orig
nrm基础命令
查看当前源列表:
nrm ls
添加源:
nrm add 源别名 源地址
使用源:
nrm use 源别名
网友评论