自定義npm命令行工具,並發布到www.npmjs.com


1.自定義一個npm腳本
- 1.新建一個項目(在任何路徑都可以);
- 2.使用`npm init -y`初始化項目
- 3.新建一個index.js文件,在文件的第一行添加 `#!/usr/bin/env node`
- 4.在package文件中添加一個bin字段,bin字段是一個鍵值對,鍵名是生成的.cmd文件的名字,值是執行這個命名所要執行的腳本.
`"bin":{"lcopy":"./index.js"}`
- 5.打開終端進入當前目錄的根路徑,執行`npm link`node會自動去全局路徑創建cmd文

 

 - 6.定義一個文件拷貝的copy方法
```
//copy.js文件,暴露一個copy方法
const fs = require('fs');
module.exports=function (src,dist,callback){
fs.readFile(src,(err,data)=>{
if(err){
return callback(err);
}
fs.writeFile(dist,data,err=>{
return callback(err);
})
callback(null);
})

};
```
- 7.在index.js中加載copy.js方法
```
 
#!/usr/bin/env node

const copy = require('./copy');

const argvs = process.argv().slice(2);

copy(argvs[0],argvs[1],err=>{
if(err){
console.log("復制文件失敗了");
}else{
console.log("復制文件成功");
}
});
console.log("copy()復制被執行了");
 
```
 
- 8.測試

 

 - 9.將自定義命令發布到npm上
    + 首先驗證一下package.json中的name是否被占用
    + 去npm.js.com或者通過npm adduser注冊一個賬戶
npm login 登陸
> 注意要使用官方的鏡像源,我這里使用了淘寶的鏡像源,切換回官方鏡像源.
 

 

 
 
- 10npm publish 發布
 
 

 

- 11 npm version patch 更新
 

 

 -  12重新發布
 查看更新

 

- 13 下載安裝
 

 

- 14npm unpublish 刪除
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM