<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
前端是怎麼共用程式碼的呢?
比如你想使用 jQuery,那麼你點選 jQuery 網站上提供的連結就可以下載 jQuery,放到自己的網站上使用
當一個網站依賴的程式碼越來越多,程式設計師發現這是一件很麻煩的事情:
有些程式設計師就受不鳥了,一個擁有三大美德的程式設計師 Isaac Z. Schlueter (以下簡稱 Isaaz)給出一個解決方案:用一個工具把這些程式碼集中到一起來管理吧!
這個工具就是他用 JavaScript (執行在 Node.js 上)寫的 npm,全稱是 Node Package Manager
NPM 的思路大概是這樣的:
1. 買個伺服器作為程式碼倉庫(registry),在裡面放所有需要被共用的程式碼
2. 發郵件通知 jQuery、Bootstrap、Underscore 作者使用 npm publish 把程式碼提交到 registry 上,分別取名 jquery、bootstrap 和 underscore(注意大小寫)
3. 社群裡的其他人如果想使用這些程式碼,就把 jquery、bootstrap 和 underscore 寫到 package.json 裡,然後執行 npm install ,npm 就會幫他們下載程式碼
4. 下載完的程式碼出現在 node_modules 目錄裡,可以隨意使用了。
這些可以被使用的程式碼被叫做「包」(package),這就是 NPM 名字的由來:Node Package(包) Manager(管理器)。
Isaaz 通知 jQuery 作者 John Resig,他會答應嗎?這事兒不一定啊,對不對。
只有社群裡的人都覺得 「npm 是個寶」的時候,John Resig 才會考慮使用 npm。
那麼 npm 是怎麼火的呢?
npm 的發展是跟 Node.js 的發展相輔相成的。
Node.js 是由一個在德國工作的美國程式設計師 Ryan Dahl 寫的。他寫了 Node.js,但是 Node.js 缺少一個包管理器,於是他和 npm 的作者一拍即合、抱團取暖,最終 Node.js 內建了 npm。
後來的事情大家都知道,Node.js 火了。
隨著 Node.js 的火爆,大家開始用 npm 來共用 JS 程式碼了,於是 jQuery 作者也將 jQuery 釋出到 npm 了。
所以現在,你可以使用 npm install jquery 來下載 jQuery 程式碼。
現在用 npm 來分享程式碼已經成了前端的標配。
以安裝Vue專案為例,在使用之前,我們先來掌握3個東西是用來幹什麼的。
windows下的NodeJS安裝是比較方便的(v0.6.0版本之後,支援windows native),只需要登陸官網(http://nodejs.org/),便可以看到首頁的“INSTALL”按鈕。
如圖,下載12.18.0 LTS (推薦給絕大部分使用者使用)直接點選就會自動下載了。
下載後雙擊安裝
可以使用預設路徑。
注意,如下圖所示,在安裝node.js時,將一起自動安裝npm包管理器,同時將兩者自動新增到系統的環境變數。
一路點Next,最後點Finish完成
是否在安裝目錄下存在node.exe、npm.cmd檔案和node_modules目錄等。
檢視node.js和npm的環境變數是否增加
echo %Path%
通過命令檢視node.js和隨著它一起安裝的npm模組的版本號。
node –v # v12.18.0 npm –v # 6.14.4
npm list -global
注意:npm的本地全域性倉庫在C系統磁碟的使用者目錄。即C:Usersbobin.yangAppDataRoamingnpm。
npm config set registry=http://registry.npm.taobao.org
npm config list
我們關注一個使用者組態檔.npmrc,可以看到剛才的設定資訊
命令1
npm config get registry
命令2
npm info vue # 看看能否獲得vue的資訊
npm install ***為安裝或更新命令 加上-g這個引數的意思是裝到global目錄下即C:Usersbobin.yangAppDataRoamingnpm,否則為安裝到當前目錄下。
單獨更新npm :
npm install npm -g
再次檢視npm的版本:
npm -v
再次檢視global裡的模組,現在不為空了,已經讀了NPM模組了。
npm list -global
本地模式和全域性模式的特點如下:
NPM提供了很多命令,例如install和publish,使用 npm help 可檢視所有命令。
當你的專案需要依賴多個包時,推薦使用 package.json。其優點為:
npm init
命令生成遵守規範的 package.json檔案使用npm config
命令可以達到此目的。
npm config set prefix <目錄>
或者手動在 ~/.npmrc
檔案中進行設定:
prefix = /home/yourUsername/npm
更改目錄後記得在系統環境變數 PATH
中新增該路徑:
export PATH=~/npm/bin:$PATH
npm install預設將所有指定的軟體包儲存到依賴項中。此外,您可以使用一些標誌來控制在何處以及如何儲存它們:
$ npm install -g cnpm --registry=https://registry.npmmirror.com
1、npm run XXX是執行設定在package.json中的scripts 設定的 value。
"scripts": { "serve": "vue-cli-service serve", "build": "vue-cli-service build", "lint": "vue-cli-service lint" },
npm run serve 實際執行的是 vue-cli-service serve
2、比如:
只有在package.json中的指令碼設定了,你才能run,所以不是所有的專案都能npm run dev/build。
要了解這些命令做了什麼,就要去scripts中看具體執行的是什麼程式碼。
這裡就像是一些命令的快捷方式,免去每次都要輸入很長的的命令(比如unit那行)。
3、dev和serve的區別
4、檢視當前專案的所有 npm 指令碼命令
其實也可以在package.json的看scripts物件裡有什麼屬性
npm run
5、dev,build等沒有強制含義,我們在通常情況下:
如果對npm run這一些列指令碼命令有疑惑,可以看npm-hooks
Yarn釋出於2016年10月。
npm install -g yarn
npm install : yarn
npm install react : yarn add react
npm uninstall react : yarn remove react
npm install react --save-dev : yarn add react --dev
npm update : yarn upgrade
npm run build : yarn run build
到此這篇關於npm安裝與使用的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支援it145.com。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45