1
我想知道是否有任何方法使用客戶端JavaScript獲取NPM包的最新版本標記。我四處尋找API和類似的東西,但我找不到任何不被棄用的東西。使用客戶端獲取NPM版本標記javascript
但是,我非常確定可以這樣做,因爲shields.io完全適用於多個軟件包。
我想要做的是按照原樣獲取最新版本標籤(例如v1.2.5
),不管是字符串還是JSON格式。
我想知道是否有任何方法使用客戶端JavaScript獲取NPM包的最新版本標記。我四處尋找API和類似的東西,但我找不到任何不被棄用的東西。使用客戶端獲取NPM版本標記javascript
但是,我非常確定可以這樣做,因爲shields.io完全適用於多個軟件包。
我想要做的是按照原樣獲取最新版本標籤(例如v1.2.5
),不管是字符串還是JSON格式。
您可以使用您選擇的AJAX方法調用npm註冊表。
給定包的URL是基本註冊表URL http://registry.npmjs.org,其中包作爲路徑,即http://registry.npmjs.org/styled-components。
如果檢出第二個URL,您將看到一個JSON文檔,其中包含所需的所有信息,包括最新版本。
示例代碼:
const res = await fetch('http://registry.npmjs.org/styled-components');
const json = await res.json();
console.log(json['dist-tags'].latest) // latest distributed version
我已經編輯你的代碼的最後一行[符合這一建議編輯](https://meta.stackoverflow.com/q/348881/6650102)。讓我知道這是不是你想要的,但很確定這只是一個錯字(你不能使用點語法在它們中使用'-'來獲取屬性) – Aurora0001
Thanks @ Aurora0001。這確實是我的錯字,我讚賞這項修正案。 –
@JamieDixon沒問題 - 您應該感謝DaftKauries(請參閱我以前的評論中的鏈接)發現問題! – Aurora0001