注册一个npm的账号
- 登录npm官网 https://www.npmjs.com 注册一个账号。
开始开发一个npm包
初始化仓库
- 所有的npm包都需要进行初始化,也就是我们所看到的package.json文件。
- 新建一个空文件夹 如:
- 进入到这个文件目录的终端执行:
npm init
命令。
npm init
终端提示会让你输入版本号,作者,描述,入口脚本等等。为了测试可以全部选择默认。完成之后会生成一个package.json文件:
{
"name": "test-module",
"version": "1.0.0",
"description": "'npm测试'",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "lwh",
"license": "ISC"
}
entry文件,也就是主入口文件
package.json文件的入口文件指向index.js
,所以我们在同一目录下新建一个js文件index.js
我们可以先 export
一个 hello world
函数。如下:
function hello(){
console.log('hello npm');
}
exports.hello=hello;
测试阶段
- 在文件跟目录下创建文件夹
node_modules
,并且在此目录下新建一个文件夹,作为包名。如:test-module
。 - 将
index.js
文件移动到test-module
目录下,然后npm init
。 - 在项目的根目录下新建一个
test.js
文件 ,代码如下:
var hello =require('test-module');
hello.hello();
- 此时项目文件目录为:
npmtest //项目根目录
node_modules //包目录
test-module //插件文件夹
index.js
package.json
test.js //测试js文件
package.json //配置文件
- 终端回到项目跟目录下 执行
node test.js
,终端输出hello npm
就是运行成功。
发布到npm上面
- 终端打开到插件文件夹
test-modules
目录下 执行npm adduser
,按照终端提示输入npm 的用户名 ,密码,邮箱信息。 - 发布npm包 执行
npm publish
, 之后就可以npm上面找到了这个包。
安装使用刚上传的包
- 新建文件夹并且终端执行
npm init
. - 终端执行:
npm i test-modules --save
就可以node-modules
目录下看到这个包了。 - 在项目的根目录下新建一个
test.js
文件 ,代码如下:
var hello =require('test-module');
hello.hello();
终端执node test.js
看到输出hello npm
就ok了。
更新npm包
- 终端打开插件的文件目录下 如:test-modules 下。
- 更新完毕后再次执行
npm publish
命令就ok, 注意需要修改package.json
的version
大于当前版本即可,否则会报错。如下:
删除npm包
npm unpublish --force