本文简单地记录了发布一个简单npm
包的过程,以便后续参考使用。
初始化npm init
通过npm init
创建一个package.json
文件
D:\robin\lib\weapp-utils>npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
package name: (weapp-utils)
version: (1.0.0)
description: some foundmental utils for weapp
entry point: (lib/index.js)
test command:
git repository:
keywords: weapp,utils
author: tusi666
license: (ISC) MIT
About to write to D:\robin\lib\weapp-utils\package.json:
{
"name": "weapp-utils",
"version": "1.0.0",
"description": "some foundmental utils for weapp",
"main": "lib/index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [
"weapp",
"utils"
],
"author": "tusi666",
"license": "MIT"
}
其中main
字段是入口文件
写好README
一个完备的README
文件是必要的,以便别人了解你的包是做什么用途。
确认registry
一般我们开发时会修改npm registry
为https://registry.npm.taobao.org
。
但是发布npm
包时,我们需要将其改回来,不然是会报错的。
npm config set registry http://registry.npmjs.org/
npm注册账号
打开npm
官网,开始注册账号。
ps:记得要验证邮箱哦!
添加npm账户
使用npm adduser
添加账户,别名npm login
D:\robin\lib\weapp-utils>npm adduser
Username: tusi666
Password:
Email: (this IS public) [email protected]
Logged in as tusi666 on https://registry.npm.taobao.org/.
添加github仓库
在package.json
添加配置项,不加也没事,看自己需求。
"repository": {
"type": "git",
"url": "https://github.com/xxx/zqh_test2.git"
}
发布
npm publish
如果发布时报这样的错,
The operation was rejected by your operating system.
npm ERR! It's possible that the file was already in use (by a text editor or antivirus),
npm ERR! or that you lack permissions to access it.
建议还是检查下registry
,或者npm adduser
是不是成功了。
发布成功,会有这样的提示,
npm notice
npm notice package: [email protected]
npm notice === Tarball Contents ===
npm notice 397B package.json
npm notice 1.1kB LICENSE
npm notice 2.7kB README.md
npm notice 12.9kB lib/index.js
npm notice === Tarball Details ===
npm notice name: weapp-utils
npm notice version: 1.0.0
npm notice package size: 5.1 kB
npm notice unpacked size: 17.1 kB
npm notice shasum: a7f2f428d9334dd1dd749d2a492dbc4df7195d0d
npm notice integrity: sha512-Cp8jPhOMq73y6[...]bfofe7X+4cLeg==
npm notice total files: 4
npm notice
+ [email protected]
上npm
搜索weapp-utils
,发现有了!
调用
发布成功了,也要验证下,是否可正常使用。
import { merge } from "weapp-utils"
let mergedOptions = merge(DEFAULT_OPTIONS, options)
扫一扫下方小程序码或搜索Tusi博客
,即刻阅读最新文章!