欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

手把手教你如何使用Vite構(gòu)建vue項(xiàng)目

 更新時(shí)間:2024年10月26日 11:52:16   作者:..鑫..  
這篇文章主要介紹了如何使用Vite構(gòu)建vue項(xiàng)目的相關(guān)資料,本文主要介紹了Vite構(gòu)建Vue項(xiàng)目的詳細(xì)步驟,包括檢查node.js和pnpm的安裝,構(gòu)建Vite+Vue項(xiàng)目,利用HBuilderX導(dǎo)入項(xiàng)目,需要的朋友可以參考下

1.檢查node.js和npm/pnpm的安裝

這里我使用的是pnpm

node -v
pnpm -v

2.構(gòu)建一個(gè) Vite + Vue 項(xiàng)目

其中cxr_kfc是我的項(xiàng)目名稱

運(yùn)行需要指定工作空間,在自己的目錄下打開(kāi)

pnpm create vite cxr_kfc --template vue

運(yùn)行成功

2.1 執(zhí)行提示的命令

會(huì)在項(xiàng)目文件中增加一個(gè)文件,不要亂動(dòng),不然可能報(bào)錯(cuò)

運(yùn)行成功

3.使用HBuilderX導(dǎo)入項(xiàng)目

4.使用 Vite 和 Vue 3 構(gòu)建 SPA

4.1項(xiàng)目結(jié)構(gòu)

Vite 會(huì)自動(dòng)創(chuàng)建一個(gè)基本的項(xiàng)目結(jié)構(gòu),包括 src 目錄下的組件、路由和狀態(tài)管理等文件。

  • src: 包含源代碼
    • App.vue: 根組件
    • main.js: 應(yīng)用程序入口
    • router: Vue Router 配置
    • store: 狀態(tài)管理(如使用 Pinia,這里我暫時(shí)沒(méi)有用到)

4.2 增加路由

可以輕松地在單頁(yè)面應(yīng)用(SPA)中實(shí)現(xiàn)頁(yè)面間的導(dǎo)航和視圖的動(dòng)態(tài)加載

pnpm add vue-router@4

路由安裝成功

4.3 安裝組件Element Plus

安裝成功

4.4 配置路由

4.4.1 創(chuàng)建兩個(gè)文件為后續(xù)跳轉(zhuǎn)做準(zhǔn)備

先在src創(chuàng)建一個(gè)目錄pages,在目錄中創(chuàng)建兩個(gè)vue文件

再兩個(gè)文件中放入測(cè)試數(shù)據(jù)

4.4.2 創(chuàng)建路由:router/index.js文件中,聲明路由表(注冊(cè)所有vue文件)

在src中創(chuàng)建一個(gè)router目錄,在router目錄中創(chuàng)建一個(gè)index.js文件,在文件中聲明路由,文件中代碼如下:

import { createWebHashHistory, createRouter } from 'vue-router'

// 注冊(cè)自定義的vue文件
import Order from '../pages/Order.vue'
import Billing from '../pages/Billing.vue'

// 路由表
const routes = [
  { path: '/', component: Order },
  { path: '/Billing', component: Billing },
]

// 創(chuàng)建路由對(duì)象
const router = createRouter({
  history: createWebHashHistory(),
  routes,
})


//聲明:導(dǎo)出
export default router

其中,路由表中

  • path: 這是指定的 URL 路徑。當(dāng)用戶在瀏覽器地址欄中輸入這個(gè)路徑或者通過(guò) Vue Router 的 <router-link> 或編程式導(dǎo)航 (this.$router.push()) 導(dǎo)航到這個(gè)路徑時(shí),對(duì)應(yīng)的組件將會(huì)被渲染。

  • component: 這是與指定路徑關(guān)聯(lián)的 Vue 組件。當(dāng)路徑匹配時(shí),這個(gè)組件將被加載并顯示在 <router-view> 占位符的位置上。

4.4.3 改造App.vue,設(shè)定RouterView

將App.vue文件中的內(nèi)容替換:

<template>
	<router-link to="/">點(diǎn)餐</router-link> 
	<router-link to="/billing">結(jié)賬</router-link> 
	
	<router-view></router-view>

</template>

4.4.4 在整個(gè)項(xiàng)目中使用路由,在main.js中注冊(cè)

import { createApp } from 'vue'
import './style.css'
import App from './App.vue'

//引入路由index.js,導(dǎo)入js文件
import router from './router/index.js'

const app = createApp(App)
app.use(router)
app.mount('#app')

4.4.5 再次運(yùn)行 pnpm run dev

成功,實(shí)現(xiàn)跳轉(zhuǎn)

5.美化頁(yè)面

6.總結(jié)

6.1 App.vue vue文件特點(diǎn)

由3部分組成:template 寫(xiě)html代碼、script js腳本vue3+ setup語(yǔ)法方式、style css樣式,scoped限定只在本片段中生效,每個(gè)組件都應(yīng)該有一個(gè)清晰的職責(zé)和數(shù)據(jù)流,

沒(méi)有順序關(guān)系

6.2<div id="app">的作用

<div id="app"></div> 這個(gè)元素是 Vue 實(shí)例掛載點(diǎn)的標(biāo)識(shí)。

當(dāng)你啟動(dòng)項(xiàng)目并在瀏覽器中打開(kāi)它時(shí),Vue 會(huì)查找這個(gè)特定的 DOM 元素,并將其作為 Vue 實(shí)例的掛載點(diǎn)。

createApp(App) 創(chuàng)建了一個(gè) Vue 應(yīng)用程序?qū)嵗?,其?nbsp;App 是你的應(yīng)用程序的根組件,通常定義在 App.vue 文件中。.mount('#app') 方法則將這個(gè)應(yīng)用程序?qū)嵗龗燧d到頁(yè)面上帶有 id="app" 的 DOM 元素上。

所以我們不會(huì)直接修改 index.html 文件中的 #app 元素內(nèi)容,而是通過(guò) Vue 組件和模板語(yǔ)法來(lái)動(dòng)態(tài)生成這部分內(nèi)容。

6.3 Vue Router和Element Plus

Vue Router 是 Vue 官方的客戶端路由解決方案。

客戶端路由的作用是在單頁(yè)應(yīng)用 (SPA) 中將瀏覽器的 URL 和用戶看到的內(nèi)容綁定起來(lái)。當(dāng)用戶在應(yīng)用中瀏覽不同頁(yè)面時(shí),URL 會(huì)隨之更新,但頁(yè)面不需要從服務(wù)器重新加載。

Vue Router 基于 Vue 的組件系統(tǒng)構(gòu)建,你可以通過(guò)配置路由來(lái)告訴 Vue Router 為每個(gè) URL 路徑顯示哪些組件。

Element Plus 是 Element UI 的升級(jí)版,是一個(gè)基于 Vue 3 的現(xiàn)代化 UI 組件庫(kù),它提供了一系列豐富且風(fēng)格統(tǒng)一的組件,幫助開(kāi)發(fā)者快速構(gòu)建美觀、響應(yīng)式的界面。Element Plus 遵循了 Material Design 和 iOS 的設(shè)計(jì)原則,適用于構(gòu)建桌面和移動(dòng)設(shè)備上的應(yīng)用程序。

6.4 Vue框架開(kāi)發(fā)單頁(yè)面開(kāi)發(fā)SPA

它和傳統(tǒng)開(kāi)發(fā)不一樣的(asp/jsp/php/h5 多頁(yè)面)

怎么去把其他內(nèi)容(home首頁(yè)、about關(guān)于…)怎么存儲(chǔ),展現(xiàn)它通過(guò)路由工具Vue-router進(jìn)行跳轉(zhuǎn)

RouterLink 類似a標(biāo)簽,鏈接

RouterView 類似展現(xiàn)的地方,它可以接收路由跳轉(zhuǎn)

6.5 為什么使用Vite

1.現(xiàn)實(shí)問(wèn)題

基于 JavaScript 開(kāi)發(fā)的工具就會(huì)開(kāi)始遇到性能瓶頸:通常需要很長(zhǎng)時(shí)間(甚至是幾分鐘?。┎拍軉?dòng)開(kāi)發(fā)服務(wù)器,即使使用模塊熱替換(HMR),文件修改后的效果也需要幾秒鐘才能在瀏覽器中反映出來(lái)。如此循環(huán)往復(fù),遲鈍的反饋會(huì)極大地影響開(kāi)發(fā)者的開(kāi)發(fā)效率和幸福感。

Vite 旨在利用生態(tài)系統(tǒng)中的新進(jìn)展解決上述問(wèn)題:瀏覽器開(kāi)始原生支持 ES 模塊,且越來(lái)越多 JavaScript 工具使用編譯型語(yǔ)言編寫(xiě)。

2.快速的服務(wù)器啟動(dòng)

Vite 通過(guò)在一開(kāi)始將應(yīng)用中的模塊區(qū)分為 依賴 和 源碼 兩類,改進(jìn)了開(kāi)發(fā)服務(wù)器啟動(dòng)時(shí)間。

Vite 將會(huì)使用 esbuild 預(yù)構(gòu)建依賴。esbuild 使用 Go 編寫(xiě),并且比以 JavaScript 編寫(xiě)的打包器預(yù)構(gòu)建依賴快 10-100 倍。

Vite 以 原生 ESM 方式提供源碼。這實(shí)際上是讓瀏覽器接管了打包程序的部分工作:Vite 只需要在瀏覽器請(qǐng)求源碼時(shí)進(jìn)行轉(zhuǎn)換并按需提供源碼。根據(jù)情景動(dòng)態(tài)導(dǎo)入代碼,即只在當(dāng)前屏幕上實(shí)際使用時(shí)才會(huì)被處理。

3.快速更新

在 Vite 中,HMR 是在原生 ESM 上執(zhí)行的。當(dāng)編輯一個(gè)文件時(shí),Vite 只需要精確地使已編輯的模塊與其最近的 HMR 邊界之間的鏈?zhǔn)Щ?a rel="external nofollow" target="_blank">[1](大多數(shù)時(shí)候只是模塊本身),使得無(wú)論應(yīng)用大小如何,HMR 始終能保持快速更新。

要確保開(kāi)發(fā)服務(wù)器和生產(chǎn)環(huán)境構(gòu)建之間的最優(yōu)輸出和行為一致并不容易。所以 Vite 附帶了一套 構(gòu)建優(yōu)化 的 構(gòu)建命令,開(kāi)箱即用。

6.6vite項(xiàng)目的結(jié)構(gòu)和加載的原理

Vite 項(xiàng)目結(jié)構(gòu)簡(jiǎn)潔,主要包括 src/ 存放源代碼,public/ 存放靜態(tài)資源,index.html 作為入口文件。加載原理利用瀏覽器原生 ESM 支持,按需編譯模塊,結(jié)合高效 HMR 實(shí)現(xiàn)快速開(kāi)發(fā)反饋,預(yù)構(gòu)建時(shí)優(yōu)化資源,提升生產(chǎn)環(huán)境性能。

6.7Node.js/npm/pnpm

Node.js

Node.js 是一個(gè)基于 Chrome V8 引擎的 JavaScript 運(yùn)行環(huán)境,允許開(kāi)發(fā)者使用 JavaScript 開(kāi)發(fā)服務(wù)器端應(yīng)用程序。它采用了事件驅(qū)動(dòng)、非阻塞 I/O 模型,使其輕量且高效,非常適合運(yùn)行數(shù)據(jù)密集型實(shí)時(shí)應(yīng)用。Node.js 支持廣泛的模塊和包,可以通過(guò) npm/pnpm進(jìn)行安裝和管理。

npm

npm 是隨 Node.js 一起提供的包管理器,用于管理和安裝 Node.js 應(yīng)用程序的依賴包。npm 提供了一個(gè)龐大的在線倉(cāng)庫(kù),包含數(shù)百萬(wàn)個(gè)開(kāi)源軟件包,開(kāi)發(fā)者可以輕松搜索、下載和集成這些包到自己的項(xiàng)目中。npm 還提供了本地包管理功能,幫助開(kāi)發(fā)者管理項(xiàng)目依賴和版本控制。

pnpm

pnpm 是另一個(gè)用于 Node.js 的包管理器,它旨在解決 npm 和 yarn 在性能和磁盤(pán)空間使用上的問(wèn)題。pnpm 使用了鏈接的工作區(qū)概念,通過(guò)硬鏈接來(lái)減少重復(fù)文件的存儲(chǔ),從而節(jié)省磁盤(pán)空間。同時(shí),它提供了并行安裝的能力,加速了依賴的安裝過(guò)程。pnpm 也支持最新版的 JavaScript 和 TypeScript 語(yǔ)法特性,以及現(xiàn)代的模塊系統(tǒng)。

總結(jié)

到此這篇關(guān)于如何使用Vite構(gòu)建vue項(xiàng)目的文章就介紹到這了,更多相關(guān)Vite構(gòu)建vue項(xiàng)目?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue多功能渲染函數(shù)h()的使用和多種應(yīng)用場(chǎng)景

    vue多功能渲染函數(shù)h()的使用和多種應(yīng)用場(chǎng)景

    我們?cè)趘ue項(xiàng)目里面用HTML標(biāo)簽構(gòu)建頁(yè)面時(shí)最終會(huì)被轉(zhuǎn)化成vnode,而h()是直接創(chuàng)建vnode,因此h()能以一種更靈活的方式在各種各樣情景下構(gòu)建組件的渲染邏輯,并且能帶來(lái)性能方式的提升,本文介紹如何使用和列出具體的應(yīng)用場(chǎng)景,需要的朋友可以參考下
    2024-08-08
  • vue通過(guò)?API?監(jiān)聽(tīng)數(shù)組的變化

    vue通過(guò)?API?監(jiān)聽(tīng)數(shù)組的變化

    這篇文章主要介紹了vue通過(guò)?API?監(jiān)聽(tīng)數(shù)組的變化,在?Vue?中,你可以通過(guò)監(jiān)聽(tīng)數(shù)組的變化來(lái)更新界面,Vue?提供了一些特殊的語(yǔ)法以及?API?來(lái)實(shí)現(xiàn)對(duì)數(shù)組的監(jiān)聽(tīng),本文通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • VUE中的自定義指令鉤子函數(shù)講解

    VUE中的自定義指令鉤子函數(shù)講解

    這篇文章主要介紹了VUE中的自定義指令鉤子函數(shù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • vue項(xiàng)目引入svg圖標(biāo)的完整步驟

    vue項(xiàng)目引入svg圖標(biāo)的完整步驟

    在實(shí)際的項(xiàng)目開(kāi)發(fā)中,使用svg圖標(biāo)占用內(nèi)存比圖片更小,映入圖片內(nèi)存比較大,同時(shí)也適用于不同屏幕的尺寸,下面這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目引入svg圖標(biāo)的完整步驟,需要的朋友可以參考下
    2022-10-10
  • Vue3使用Echarts導(dǎo)致tooltip失效問(wèn)題及解決方法

    Vue3使用Echarts導(dǎo)致tooltip失效問(wèn)題及解決方法

    Vue3 使用 proxy 對(duì)象代理,而 echarts 則使用了大量的全等(===), 對(duì)比失敗從而導(dǎo)致了bug,這篇文章主要介紹了Vue3使用Echarts導(dǎo)致tooltip失效問(wèn)題及解決方法,需要的朋友可以參考下
    2023-08-08
  • vue如何引入sass全局變量

    vue如何引入sass全局變量

    sass或者less都提供變量設(shè)置,在需求切換主題的項(xiàng)目中使用less或者sass變量,這篇文章主要介紹了vue引入sass全局變量,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Vue.js獲取被選擇的option的value和text值方法

    Vue.js獲取被選擇的option的value和text值方法

    今天小編就為大家分享一篇Vue.js獲取被選擇的option的value和text值方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • vue自定義封裝指令以及實(shí)際使用

    vue自定義封裝指令以及實(shí)際使用

    市面上大多數(shù)關(guān)于Vue.js自定義指令的文章都在講語(yǔ)法,很少講實(shí)際的應(yīng)用場(chǎng)景和用例,下面這篇文章主要給大家介紹了關(guān)于vue自定義封裝指令以及實(shí)際使用的相關(guān)資料,需要的朋友可以參考下
    2022-01-01
  • Vue中如何對(duì)ElementUI的Dialog組件封裝

    Vue中如何對(duì)ElementUI的Dialog組件封裝

    這篇文章主要介紹了Vue中如何對(duì)ElementUI的Dialog組件封裝問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • 一篇文章,教你學(xué)會(huì)Vue CLI 插件開(kāi)發(fā)

    一篇文章,教你學(xué)會(huì)Vue CLI 插件開(kāi)發(fā)

    這篇文章主要介紹了Vue CLI插件開(kāi)發(fā),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04

最新評(píng)論