国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

煦涵說Yarn

pkhope / 1983人閱讀

摘要:是一個新的包管理器,它由開發者共同開發完成。從包管理器中借鑒,創建了文件,用來記錄項目使用每個包的確切版本。感謝您的閱讀作者煦涵年月日下面是實驗室的微信公眾號二維碼,歡迎長按掃描關注

Yarn是一個新的Javascript包管理器,它由Facebook, Google, Exponent and Tilde開發者共同開發完成。Yarn 不是 NPM 的fork版本,而是它的重新設計,Yarn 定位為"快速、可靠、安全的依賴管理工具",它的目標是解決團隊開發中使用 NPM 遇到的問題。

隨著 Yarn 的誕生,越來越多的開發者轉向了 Yarn,那么 NPM 在開發中有哪些問題,Yarn 是如何解決的呢?
NPM 一些潛在的問題:

嵌套依賴 (npm 3.0版本已修復)

串行安裝

單一個 package 來源(npmjs.com)

需要網絡來安裝軟件包(盡管我們可以創建一個臨時緩存)

允許程序包在安裝時運行代碼(不利于安全性)

不確定的包狀態(不能確定項目的所有副本使用相同的包版本)

Yarn 解決方案:

單依賴包結構: 可以使用單一版本的依賴包,安裝更快速,占用磁盤空間更少

并行安裝: 并行下載依賴包,減少下載時間

多個包來源: Yarn 讀取和安裝 npmjs.com 和 Bower安裝包,如果有個渠道down掉了,可以從另一個渠道下載包并安裝

自動重試: 單個網絡請求失敗不會導致安裝失敗,請求在失敗后會重試,這解決了由于臨時網絡問題而產生的構建異常

兼容 NPM: 從 NPM 切換到 Yarn 不需要做特殊兼容處理

yarn.lock: 用來管理 javascript 包,這個對于開發團隊來說可能是最有用的功能了。 在package.json中,依賴的包版本可以被指定為一個范圍,也可以不帶版本號。這個可能會導致一種問題,團隊內不同開發人員使用不同版本的軟件包。我們都知道,復現環境的能力與完全相關的依賴關系對于高校的調試和新團隊人員的融入至關重要。從包管理器(Bundler)中借鑒,Yarn 創建了 yarn.lock文件,用來記錄項目使用每個包的確切版本。當將此文件提交至 SVN、GIT 等代碼維護工具,可以保證項目的所有開發人員共享一套依賴包的版本號。更多文章請關注微信公眾號fedlab。

Yarn 的安裝
brew install yarn

/* Yarn 團隊不推薦 */
npm install -g yarn 

不同平臺安裝方式各異,具體參見install

NPM CLI vs Yarn CLI

初始化項目

npm  init
yarn init

從 package.json 安裝依賴

npm install
yarn

安裝指定包到依賴或者開發依賴

npm install --save [package]
yarn add [package]

npm install --save-dev [package]
yarn add [package] [--dev/-D]

安裝包到全局

npm install --global [package]
yarn global add [package]

安裝指定版本的包

npm install [package]@[version]
yarn add [package]@[version]

重新下載所有包

npm reubild
yarn install --force

卸載包

npm uninstall [package]

npm uninstall --save [package]
yarn remove [package]

npm uninstall --save-dev [package]

升級包

rm -rf node_modules && npm install
yarn upgrade
總結

相比 NPM,Yarn解決了不確定依賴、網絡問題、并行下載等問題。然而 NPM 是自己成功的犧牲品,隨著越來越多的開發者轉移使用 Yarn或者其他依賴平臺,NPM 服務器可以更有效的使用。總之兩個包管理器都很優秀,這種相互的關系,驅使著各自彼此往更優秀的方向前進,以惠及更多的開發者。

感謝您的閱讀

--eof--

作者[煦涵]
2017年05月13日

下面是「FED實驗室」的微信公眾號二維碼,歡迎長按、掃描關注:

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/88294.html

相關文章

  • 涵說Babel

    摘要:,下一代編譯器,當前版本,它可以處理的所有新語法,并內置了擴展及類型注解支持,如果對不是很了解可以查看實驗室微信公眾號文章煦涵說。 Babel,下一代javascript編譯器,當前版本 v2.4.0 ,它可以處理ES6的所有新語法,并內置了React JSX擴展及Flow類型注解支持,如果對Flow不是很了解可以查看FED實驗室微信公眾號文章煦涵說Flow。 Babel與JavaSc...

    lordharrd 評論0 收藏0
  • 涵說Flow

    摘要:現在已經在前端比較流行的等框架中得到使用。今天煦涵就和大家一起來學習以及在實際項目中的使用。安裝這里我們選擇使用,當前你也可以使用如果你對不是很了解,建議你閱讀煦涵說。 Flow是Facebook出品的一個JavaScript代碼的靜態類型檢查工具,它做了很多處理,使您的代碼更快,更智能,更自信,更好的適應性。現在已經在前端比較流行的React 、Vue 等框架中得到使用。今天煦涵就和...

    王偉廷 評論0 收藏0
  • 涵說JSON

    摘要:對象表示法,是一種數據交換格式,能夠在服務器端交換數據,年由提出,目的是取代繁瑣笨重的格式。煦涵煦涵煦涵煦涵煦涵參考文檔感謝您的閱讀作者煦涵年月日下面是實驗室的微信公眾號二維碼,歡迎長按掃描關注 JSON(Javascript Object Notaion, javascript 對象表示法), 是一種數據交換格式,能夠在服務器端交換數據, 2001年由Douglas Crockfor...

    lowett 評論0 收藏0
  • 涵說Webpack-IE低版本兼容指南

    摘要:,是一個前端資源加載打包工具,現在版本已經到,今天的文章不支持介紹的及使用,而是對最近項目開發中使用打包時處理低版本及以下瀏覽器兼容問題做一次總結。 Webpack,Webpack 是一個前端資源加載/打包工具,現在版本已經 release 到 v2.6.1,今天的文章不支持介紹Webpack的API及使用,而是對最近項目開發中使用Webpack打包時處理IE低版本(IE8及以下)瀏覽...

    tanglijun 評論0 收藏0
  • Yarn 構建工具入門基礎

    摘要:就是一個類似于的包管理工具,它是由推出并開源。二的安裝用法和基本工作流安裝以為例你可以通過包管理工具安裝。在使用一個包之前,你需要執行以下命令將其加入依賴項列表會被加入到文件中的依賴列表,同時也會被更新。 一、yarn的背景和介紹一直以來,我們在安裝和管理依賴的時候基本上都會使用npm,npm是一個非常優秀全面且廣受歡迎的包管理工具,它奠定了前端模塊化開發的基石,為前端的發展做出了不可...

    tuniutech 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<