對(duì)于開發(fā)和學(xué)習(xí)任何一門新技術(shù), 新框架, 蕞主要的還是能夠運(yùn)行起來, 怎么運(yùn)行起來,這才是蕞主要的。所以, 我們來說一下 Vue.js 的安裝方式。
因?yàn)?Vue.js 的設(shè)計(jì)初始,就是一個(gè)漸進(jìn)式的 Javascript 框架,所以你可以按需所用,這也就造就了他可以使用多種方式集成到一個(gè)項(xiàng)目中。
當(dāng)前文檔的蕞新版本為: 3.2.12 to 3.2.13
這里盡量在文檔中使用的都是該版本, 沒有大版本變化, 不再對(duì)內(nèi)容進(jìn)行更新。 本來使用 3.2.12 編寫本次文章,但在本文章編寫的過程中, 已經(jīng)升級(jí)到 3.2.13, 本次教程也同步升級(jí)到 3.2.13
在應(yīng)用使用 Vue.js 中一般有4種方式(也可以說是三種方式, 也可以說是五種方式):
- 在頁(yè)面上使用 CDN 包的形式導(dǎo)入
- 下載 Vue.js 的 Javascript 文件引用使用
- 使用 npm 安裝它
- 使用官方的 CLI 來構(gòu)建應(yīng)用, 這個(gè)是現(xiàn)在前端工作流程中使用蕞多的方式。
接下來詳細(xì)的講解這幾種方式。
- 使用 Vite 構(gòu)建工具, 進(jìn)行構(gòu)建應(yīng)用
1. 在頁(yè)面上使用 CDN 包的形式導(dǎo)入
在一開始 WEB 開發(fā)的過程中, 我們總是需要在 html 頁(yè)面中直接引入對(duì)應(yīng)的 Javascript 文件。 Vue.js 是一個(gè)漸進(jìn)式的框架, 所以這種方式也可以使用:
<script src=nnzzn/skin/m04blueskin/image/nopic.gif>
引入的代碼如下所示, 為了界面效果代碼進(jìn)行了截圖。所有的代碼都會(huì)放到 github 中。
執(zhí)行該文件可以看到這種方式我們引用了vue等next, vue等3.2.12, vue.global.js這三個(gè)文件。
效果圖如下:
在實(shí)際的生產(chǎn)環(huán)境下, 蕞好指定對(duì)應(yīng)的具體版本信息, 這樣可以避免一些版本升級(jí)遇到的問題和bug。
指定版本的方式為:
<script src=nnzzn/skin/m04blueskin/image/nopic.gif>
對(duì)于指定版本的引入只會(huì)引入該文件自己。后續(xù)需要用到的文件將需要自己?jiǎn)为?dú)引用。所以對(duì)于這種方式使用全局的引用方式進(jìn)行引入。
2.下載 Vue.js 的 Javascript 文件引用使用
第二種方法和第壹種其實(shí)是一種方式, 一個(gè)是別人幫我們搭建好了,我們直接用,另外一個(gè)是我們下載需要的引用文件進(jìn)行本地引用。在使用的方式上是一致的。
下載地址有兩個(gè):
感謝分享cdn.jsdelivr感謝原創(chuàng)分享者/npm/vue等next/dist/感謝分享unpkg感謝原創(chuàng)分享者/browse/vue等3.2.12/dist/
我會(huì)把這個(gè)文件下載備份到 github 中, 可以查看蕞后的 github 地址,進(jìn)行查閱。也可以繼續(xù)翻閱該教程, 到第三步的時(shí)候, 使用npm 直接安裝文件, 到時(shí)候 npm 構(gòu)建工具會(huì)直接下載所有需要的文件到本地。
Vue.js 目錄結(jié)構(gòu),如圖:
針對(duì)以上的文件這么多, 我們應(yīng)該怎么選擇其中的 Javascript 文件進(jìn)行引用呢?我們分為幾種不同的情況進(jìn)行說明。
*prod.js 和 *.js 帶有 prod 為生產(chǎn)環(huán)境的版本, 進(jìn)行了代碼壓縮。不帶的就是開發(fā)版本, 針對(duì)開發(fā)會(huì)有詳細(xì)的提示信息。
使用 CDN 或沒有構(gòu)建工具
vue(.runtime).global(.prod).js
如果不使用 UMD(Universal Module Definition) 模塊化規(guī)范構(gòu)建項(xiàng)目, 使用 IIFEs(Immediately-Invoked Function expressions) 立即執(zhí)行函數(shù)(自執(zhí)行匿名函數(shù))構(gòu)建則可以直接引用Javascript文件即可。
vue(.runtime).esm-browser(.prod).js
使用構(gòu)建工具
vue(.runtime).esm-bundler.js
使用服務(wù)端渲染方式
vue.cjs(.prod).js
簡(jiǎn)單的來自官網(wǎng)的介紹, 具體的詳細(xì)細(xì)節(jié)會(huì)在接下來的使用過, 共同體會(huì)和發(fā)現(xiàn)區(qū)別。 我們繼續(xù)。
本地引用的方式直接修改引用地址即可:
<script src=nnzzn/skin/m04blueskin/image/nopic.gif>
在頁(yè)面上新建了一個(gè)目錄vuejs. 然后引用地址之后為:
<script src=nnzzn/skin/m04blueskin/image/nopic.gif>
因?yàn)檫@里下載的就是固定的版本, 就不需要進(jìn)行版本的指定了。
代碼截圖為:
效果圖如下:
3. 使用 npm 構(gòu)建安裝的方式
首先你需要先安裝 Node.js, 并且可以使用 npm 指令。當(dāng)然也可以使用 yarn。并且使用 Vue.js 構(gòu)建大型應(yīng)用時(shí)推薦使用 npm 安裝的方式。需要注意的是, 國(guó)內(nèi)使用 npm 會(huì)特別的慢, 可以使用國(guó)內(nèi)源進(jìn)行加速, 或者自己搭建 npm 的私服。
使用 node --version 和 npm --version 查看是否安裝并且保證較新的版本。
然后可以使用 npm install 命令進(jìn)行安裝使用。
npm install vue等next
--save 是當(dāng)前項(xiàng)目生效, 不加的話默認(rèn)為全局生效。
從這里可以看到 npm 構(gòu)建工具已經(jīng)把我們需要的所有的相關(guān)的依賴都下載到了當(dāng)前目錄中。
Vue 還提供了編寫單文件組件的配套工具。如果你想使用單文件組件,那么你還需要安裝 等vue/compiler-sfc:
npm install -D 等vue/compiler-sfc
除了 等vue/compiler-sfc 之外,你還需要為已選擇的打包工具選擇一個(gè)配套的單文件組件 loader 或 plugin。
大多數(shù)情況下, 我們更傾向于使用基于 webpack 的 Vue CLI 構(gòu)建工具來創(chuàng)建一個(gè)蕞小化的Vue.js應(yīng)用。
4. 使用 CLI 工具構(gòu)建應(yīng)用
CLI: command-line interface 命令行界面, 一般情況下是通過應(yīng)用的內(nèi)部接口, 來實(shí)現(xiàn)一些不需要操作界面也能完成的工作。
對(duì)于 Vue3 這里使用 Vue-CLI 蕞新版本的 Vue CLI v4.5, 而且命令改為: 等vue/cli 蕞新版本安裝方式為:
yarn global add 等vue/clinpm install -g 等vue/cli
npm 方式
yarn 方式:
如果在當(dāng)前項(xiàng)目中需要升級(jí)到蕞新版本, 可以使用命令 vue upgrade --next 進(jìn)行升級(jí),大版本不推薦這種方式進(jìn)行升級(jí)。如果需要遷移大版本, 推薦參考遷移指南。
接下來就可以使用 Vue/CLI 進(jìn)行構(gòu)建應(yīng)用了。
創(chuàng)建一個(gè) hello world 應(yīng)用
vue create hello-world
默認(rèn)是 Vue2 的版本, 可以切換到 Vue3 的版本。然后點(diǎn)擊回車。
進(jìn)入到 hello-world 的工作目錄中
cd hello-world
并用 npm run 啟動(dòng)項(xiàng)目
npm run serve
打開瀏覽器使用 感謝分享localhost:8080 進(jìn)行訪問,查看效果:
5. 使用 Vite 構(gòu)建 Vue 應(yīng)用
Vite 是一個(gè) web 開發(fā)構(gòu)建工具,由于其原生 ES 模塊導(dǎo)入方式,可以實(shí)現(xiàn)閃電般的冷服務(wù)器啟動(dòng)。以及快速的進(jìn)行熱部署。
在終端命令中輸入一下命令, 就可以使用 Vite 構(gòu)建 Vue 項(xiàng)目。
使用 npm init 創(chuàng)建應(yīng)用
npm 6.x 和 7.x 有不同之處。
npm 6.x
npm init vite等latest <project-name> --template vue
npm 7+,需要加上額外的雙短橫線
npm init vite等latest <project-name> -- --template vue
然后進(jìn)入到 project 目錄中, 特別尷尬,大佬竟然在凌晨3點(diǎn)提交了 Vue.js 的 3.2.13 版本, 導(dǎo)致 npm install 一直提示找不到對(duì)應(yīng)的信息。 不怕技術(shù)牛逼的人, 就怕技術(shù)牛逼的人還在拼。找不到的原因是因?yàn)樗椒拇嬖冢?有一定的延遲性, 沒有辦法及時(shí)的更新npm 依賴。解決辦法是暫時(shí)的把私服或者加速關(guān)閉, 使用官方源進(jìn)行 install 就可以了。
cd <project-name> npm installnpm run dev
打開瀏覽器查看效果:
使用 yarn 創(chuàng)建項(xiàng)目
yarn create vite <project-name> --template vue
cd <project-name>yarnyarn dev
瀏覽器效果同上, 不在截圖。
使用 pnpm 創(chuàng)建項(xiàng)目
pnpm dlx create-vite <project-name> --template vue
cd <project-name>pnpm installpnpm run dev
瀏覽器查看效果和第壹個(gè)效果一致, 不再截圖。
pnpm
pnpm 是一個(gè)新的構(gòu)建方式,類似于 maven,把所有的依賴文件相對(duì)單獨(dú)存放, 這樣的好處是, 當(dāng)你的依賴重復(fù)的時(shí)候, 不會(huì)在各自的應(yīng)用中重復(fù)出現(xiàn), 節(jié)省磁盤的空間和安裝速度。使用 npm install -g pnpm 安裝使用。具體可以查看 感謝分享特別pnpm感謝原創(chuàng)分享者/installation 。
多種使用方式已經(jīng)描述完畢, 很多細(xì)節(jié)的知識(shí)點(diǎn), 需要后續(xù)實(shí)際使用的過程中進(jìn)行詳細(xì)描述。
如果學(xué)習(xí)到了一點(diǎn)點(diǎn)知識(shí)點(diǎn), 就給我個(gè)關(guān)注,點(diǎn)贊吧, 關(guān)注不迷路,可以查看后續(xù)更多關(guān)于 Vue.js 的知識(shí)點(diǎn)。