尊重版权,未经授权不得转载出处:www.lcode.org
本周报来自江清清的技术专栏,欢迎微信关注公共号:codedev123.精彩技术文章第一时间推送!
(一).NPM介绍
我们在开发React Native应用的时候,经常会开发一些组件和模块库,同时打包以便在项目中便捷使用。这样我们一般会选择把库模块上传到NPM库(www.npmjs.com/)。NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种:允许用户从NPM服务器下载别人编写的第三方包到本地使用。允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。
React Native交流10群:157867561,欢迎各位大牛,React Native技术爱好者加入交流!同时博客右侧欢迎微信扫描关注订阅号,移动技术干货,精彩文章技术推送!
(二).node和npm安装
我们需要在系统上面进行安装相应的node模块(注意:Python2.6或者2.7已经安装),具体安装方法可以参考如下的两篇文章(Mac和Windows):
2.1.Mac版本React Native环境搭建附属Node和Npm模块安装:www.lcode.org/?p=4
2.2.Windows版本React Native环境搭建附属Node和Npm模块安装:www.lcode.org/?p=702
在成功安装node之后,npm(node package manager)已经包含在内了,不需要在进行独立安装,直接执行npm命令即可检查是否已经正常安装好。
(三).仓库创建(repository)
现在我们需要去创建模块(module)所需要的仓库(repository),这时候需要你拥有一个github账号了。用这个git仓库来托管我们的模块代码,并且这样可以方便用户向我们提交一些issue或者pr。
(四).package.json配置文件初始化
接下来我们要使用npm init命令创建package.json配置文件,跟着步骤一步步设置相关的配置信息,例如:模块名称,版本,描述简介,依赖库,作者相关信息,版权声明等等。下面我们来已testnpm项目为例,带着大家一步步来初始化。
我已经在github上面创建了一个testnpm项目,然后git clone到本地:
之后cd testnpm并且执行npm init命令,系统终端会提示你输入相关配置信息,如果不想输入的直接回车即可。
这些信息输入完成以后,系统会跟你确定一下信息是否有误,如果没有直接yes回车即可。
然后我们可以创建一些对应的文件夹,例如:code,lib,test,doc等等,用于存放具体源代码,库代码,测试文件和一些相关项目文档等。
(五).发布(publish)
完成以上一些基本配置步骤之后,接下来我们需要在npmjs.com网站注册账号,然后用于发布模块使用。基本命令如下,用户名,密码,邮箱填写你注册的信息
配置成功之后,认证信息会存储起来,我们可以通过如下命令进行查看用户:
以上步骤全部完成以后,现在我们可以进行发布模块了:
居然提示没有权限,后来发现这个库项目在npmjs中别人已经提交过了,所以我们需要修改一下名字,打开package.json文件修改一下里边的name字段,然后重新执行npm publish命令之后,就会看到
提示已经上传成功了,接着刷新一下npmjs.com网站就会看到刚刚上传的库信息
然后用户如果需要使用你的这个库,直接npm install lcode_testnpm命令即可下载安装到项目中啦。
最后我们来说一下package.json文件中的version版本的信息设置:
版本格式:主版号.次版号.修订号,版号递增规则如下:
- 主版号:当你做了不相容的 API 修改,
- 次版号:当你做了向下相容的功能性新增,
- 修订号:当你做了向下相容的问题修正。
先行版号及版本编译资讯可以加到「主版号.次版号.修订号」的后面,作为延伸。
到现在我们已经成功完成了创建初始库到正确上传到npm社区的工作,赶紧来尝试一下把~