把本身的代碼發佈到npm(npm publish)

 

寫了代碼如何發佈到npm包?vue

示例git

demo1github

demo2npm

1.註冊npm帳號

在npm官網註冊https://www.npmjs.com/
注意郵箱要驗證,會發送驗證連接到你的註冊郵箱,沒有驗證的話是不能發佈代碼的json

2.給你的代碼庫起個名字

名字不能重複,在官網查詢下是否是重複,重複的包名不能提交c#

3.建立項目

須要一個package.json文件,這個文件不單單是用來標明依賴和npm script腳本,也能夠是一個npm包被外界識別的配置文件。
由於配置文件內容比較多,能夠選擇本身手寫,或者bash

npm initmarkdown

根據提示寫好你的信息,以個人爲例:name包名和main/bin對應你的包的入口文件,這裏個人代碼和github一塊兒管理,author注意不要寫錯和你的npm帳號一致app

{
"name": "calamus-vue-music",
"version": "0.0.2",
"description": "a vue music player",
"main": "music.vue",
"bin": "music.vue",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "git+https://github.com/calamus0427/calamus-vue-music.git"
},
"keywords": [
"music",
"player",
"vue",
"calamus"
],
"author": "calamus",
"license": "MIT",
"bugs": {
"url": "https://github.com/calamus0427/calamus-vue-music/issues"
},
"homepage": "https://github.com/calamus0427/calamus-vue-music#readme",
"_from": "calamus-vue-music@0.0.1"
}

4.本地測試

npm pack

會生成一個 tgz版本文件
打開一個新的項目,路徑爲剛剛生成的路徑post

npm install 路徑/文件-1.0.0.tgz

5.提交發布

先登陸你的帳號

$ npm adduser    Username: your name Password: your password Email: yourmail

按照你註冊的帳號配置好,這時候看一下package.json中author儘可能與npm帳戶一致。
在根目錄下配置帳號信息,只用配置一次便可,我上傳的時候發現有提示必須admin權限才能上傳問題就是沒在根目錄下配置信息
檢查是否登陸成功

npm who am i
# 若是不成功則從新登陸一下
npm login

配置成功以後提交代碼

npm publish

若是提交成功會出現以下提示:

注意每次提交版本號都要比上次的高

5.測試是否提交成功

去官網你的帳號下面看一下有沒有
或者直接npm下載下來

npm install calamus-vue-music --save

一些常見的錯誤:

  • 1.no_perms Private mode enable, only admin can publish this module

這是由於鏡像設置成淘寶鏡像了,設置回來便可

npm config set registry http://registry.npmjs.org
  • 2.npm publish failed put 500 unexpected status code 401
    通常是沒有登陸,從新登陸一下 npm login 便可

  • 3.npm ERR! you do not have permission to publish 「your module name」. Are you logged in as the correct user?
    包名被佔用,改個包名便可。最好在官網查一下是否有包名被佔用,以後再重命名

  • 4.you must verify your email before publishing a new package
    郵箱未驗證,去官網驗證一下郵箱

相關文章
相關標籤/搜索