Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

如何发布一个NPM包呢? #2

Open
shaobeichen opened this issue May 3, 2018 · 0 comments
Open

如何发布一个NPM包呢? #2

shaobeichen opened this issue May 3, 2018 · 0 comments

Comments

@shaobeichen
Copy link
Owner

shaobeichen commented May 3, 2018

npm

开始做之前nodejs默认是要安装的,怎么安装自行百度其他教程。
首先在npm网站上注册一个账号,这个账号之后会用到。
npm网站注册地址:https://www.npmjs.com/signup

注意:在注册的时候有可能会遇到注册失败或者503等问题,比如:Account creation denied. Please contact [email protected].遇到这种问题,不是网络问题,这时候联系官方人员,他会帮你处理(...想办法刷锅),不过一般都可以啦。

1.编写模块

(1)新建一个目录如npm-test-publish-xxx,后面的xxx最好填写你自己专属的昵称或者其他,因为在后面发布的时候,如果遇到相同的名称,是发布不了的。

1525314087

(2)新建文档npm-test-publish-xxx.js,编写代码,如下

exports.sayHello = function () {
    return "Hello,world!";
};

(3)发布到github,这样在package.json文件中可填写repository地址,可实现自动更新包

2.初始化包描述文件

使用<npm init>命令生成package.json文件

3.登录包仓库账号

登录,使用<npm login>登录已有账号
注意:如果注册或登录过程中出现如下报错,可能是使用了国内镜像导致的,是通过命令<npm config ls -l|grep config>查看,找到userconfig对应的地址,删除该文件即可。

4.上传包

使用<npm publish npm-test-publish-xxx>上传包
注意:不管是刚注册的账号还是已登录的账号,必须去官网发送邮箱验证链接,验证邮箱后才可以上传包。

5.安装包

使用<npm install npm-test-publish-xxx>安装包,当前目录会生成node_modules目录,package-lock.json文件。
注意:如果当前目录与刚才编写模块的目录在同一个父目录下,则并不会下载,而是会在node_modules下生成包目录,然后该包目录到发布的目录会建立一个软连接。

6.管理员权限

(1)查看管理包的所有者
npm owner ls <npm-test-publish-xxx>
(2)添加/删除包的拥有者
npm owner add <user> <package name>
npm owner rm <user> <package name>

7.分析包

使用<npm ls>,可分析出当前路径下能够通过模块路径找到的所有包,并生成依赖树。
在使用NPM过程中,如果不能确认当前目录下能否通过require()顺利引入想要的包,这时可以执行<npm ls>分析包。

8.删除/撤销

删除要用force强制删除。超过24小时就不能删除了。自己把握好时间。
npm --force unpublish npm-test-publish-xxx

----------------------------- 2018/08/29 更新 -----------------------------

如果想要在发布包对应的github仓库里面README加上类似这样的图片及链接

nodei

可以在这里操作,网址:https://nodei.co/

camo

可以在这里操作,网址:https://shields.io/

camo

可以在这里操作,网址:https://travis-ci.org/ 参考 #8 ( 博客 )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant