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

vue3+ts+vite2項目實戰(zhàn)踩坑記錄

 更新時間:2022年09月03日 12:02:57   作者:飛魚日記  
最近嘗試上手Vue3+TS+Vite,對比起Vue2有些不適應(yīng),但還是真香,下面這篇文章主要給大家介紹了關(guān)于vue3+ts+vite2項目的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下

1.Vite創(chuàng)建vue3項目

使用 NPM:

npm init @vitejs/app

使用 Yarn:

yarn create @vitejs/app

一個命令快速安裝vite+ts+vue3項目:

npm init @vitejs/app vite-app --template vue-ts

默認構(gòu)建好的目錄結(jié)構(gòu)是不包含routervuex的需要手動安裝并創(chuàng)建對應(yīng)目錄,使用命令:

npm i vue-router@next vuex@next -S

注意:vue3.0只支持router和vuex必須是4.0及以上版本

下面是我創(chuàng)建好的實戰(zhàn)項目目錄,僅供參考:

2.配置別名alias

vite構(gòu)建的vue默認是沒有@別名的,所以需要我們手動配置下,如下圖vite2.0配置方法僅供參考:

3.引入element-plus

如果需要使用element ui庫需要使用兼容vue3.0的element-plus庫才行

安裝element-plus:

npm i element-plus -S

是按需引入還是全局全部引入,看個人需求,具體引入方法請移步到element-plus官網(wǎng)里面介紹的很詳細,就不再贅述了

如果你是用按需加載可抽離成單獨文件,新建elementplus.ts代碼如下:

/*
 * @Author: 飛魚日記
 * @Date: 2021-04-18 16:12:26
 * @LastEditors: 飛魚日記
 * @LastEditTime: 2021-04-27 10:47:07
 * @Description: element-plus 組件全局按需加載文件
 */
// 官方網(wǎng)站:https://element-plus.gitee.io/#/zh-CN/component/installation
import {
  ElButton,
  ElLoading,
} from 'element-plus'

// 組件寫在components中
export const components: any[] = [
  ElButton,
]
// 插件寫在plugins中
export const plugins: any[] = [ElLoading]

main.ts引入,如下:

import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import { components, plugins } from './plugins/elementplus'
const app = createApp(App);

// 按需注冊elementplus的組插件
components.forEach(component => {
  app.component(component.name, component)
})
plugins.forEach(plugin => {
  app.use(plugin)
});

app.use(router).use(store).mount('#app');

4.glob全局導入

想要組件自動注冊全局引入需要使用vite官方提供的導入方案,分為globglobEager異步和同步兩種,但是在實踐中g(shù)lob純在一個神秘的bug,由于它是異步加載組件的,如果一個頁面模板引入了很多組件,多次秒刷新時會出現(xiàn)白屏或者有的組件加載了有的組件未加載空白的情況,不知道是因為我刷新太快,組件未來的及加載還是什么,所以最后采用了globEager同步加載組件的方法,這個方法是一刷新所有組件同步加載的,多次秒刷沒有發(fā)現(xiàn)bug;
main.ts引入一段代碼:

/*****匹配根目錄文件將通過globEager動態(tài)全局導入注冊組件--Start*****/
const modules = import.meta.globEager('./components/*/*.vue')
for (const path in modules) {
  app.component(modules[path].default.name,modules[path].default)
}

上面modules所匹配的目錄根據(jù)你自己的項目目錄配置即可,我傾向于匹配components下的所有子目錄下所有組件文件,如下圖:

注意:每個組件必須是具名組件(即組件name屬性必須設(shè)置名稱頁面應(yīng)用時需使用name名稱來調(diào)用)比如:

組件button:

頁面引入使用button組件里定義的name即可:

至此我們就可以暢快的使用組件了而且頁面無需使用import導入,是不是很爽- _ -

5.靜態(tài)資源導入

vite導入圖片方法,如果圖片放在assets里面不能使用絕對路徑引入比如

這樣引入打包時是不能夠被vite打包進去的

官方推薦方法:

import imgUrl from './img.png'
document.getElementById('hero-img').src = imgUrl

至于css中背景圖片的url()同樣導入方法

總結(jié):

暫時寫這么多,vite相對于webpack簡直質(zhì)的飛躍,如其名速度超快,但往往新的事物誕生也會伴隨著新的坑需要我們?nèi)ヌ剑佑?,奧利給~

到此這篇關(guān)于vue3+ts+vite2項目的文章就介紹到這了,更多相關(guān)vue3+ts+vite2項目內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue3自定義指令語法圖文詳解

    Vue3自定義指令語法圖文詳解

    這篇文章主要給大家介紹了Vue3自定義指令的相關(guān)資料,自定義指令是一種在Vue應(yīng)用程序中擴展HTML標簽的能力,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-09-09
  • VueQuillEditor富文本上傳圖片(非base64)

    VueQuillEditor富文本上傳圖片(非base64)

    這篇文章主要介紹了VueQuillEditor富文本上傳圖片(非base64),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • Vuex的actions屬性的具體使用

    Vuex的actions屬性的具體使用

    這篇文章主要介紹了Vuex的actions屬性的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • 簡單聊一聊vue中data的代理和監(jiān)聽

    簡單聊一聊vue中data的代理和監(jiān)聽

    這篇文章主要給大家介紹了關(guān)于vue中data的代理和監(jiān)聽的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用vue具有一定的參考學習價值,需要的朋友可以參考下
    2022-09-09
  • 關(guān)于vue-router的那些事兒

    關(guān)于vue-router的那些事兒

    要學習vue-router就要先知道這里的路由是什么?為什么我們不能像原來一樣直接用標簽編寫鏈接哪?vue-router如何使用?常見路由操作有哪些?等等這些問題,就是本篇要探討的主要問題,感興趣的朋友跟隨腳本之家小編一起學習吧
    2018-05-05
  • Vue3中Element Plus Table(表格)點擊獲取對應(yīng)id方式

    Vue3中Element Plus Table(表格)點擊獲取對應(yīng)id方式

    這篇文章主要介紹了Vue3中Element Plus Table(表格)點擊獲取對應(yīng)id方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • npm?ERR!?code?E404在vscode安裝插件時報錯的兩種解決方案

    npm?ERR!?code?E404在vscode安裝插件時報錯的兩種解決方案

    這篇文章主要給大家介紹了關(guān)于npm?ERR!?code?E404在vscode安裝插件時報錯的兩種解決方案,關(guān)于這個問題,通常是由于插件名稱輸入錯誤、網(wǎng)絡(luò)問題或插件已被刪除引起的,文中將兩種解決方法都介紹的非常詳細,需要的朋友可以參考下
    2023-04-04
  • 詳解Vue3?中的計算屬性及偵聽器

    詳解Vue3?中的計算屬性及偵聽器

    這篇文章主要介紹了詳解Vue3?中的計算屬性及偵聽器,文章圍繞主題的相關(guān)資料展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以看下一下
    2022-08-08
  • vue基礎(chǔ)之事件v-onclick=

    vue基礎(chǔ)之事件v-onclick="函數(shù)"用法示例

    這篇文章主要介紹了vue基礎(chǔ)之事件v-onclick="函數(shù)"用法,結(jié)合實例形式分析了vue.js事件v-on:click="函數(shù)"的data數(shù)據(jù)添加、點擊響應(yīng)、以及留言本功能相關(guān)操作技巧,需要的朋友可以參考下
    2019-03-03
  • vue如何實現(xiàn)接口統(tǒng)一管理

    vue如何實現(xiàn)接口統(tǒng)一管理

    這篇文章主要介紹了vue如何實現(xiàn)接口統(tǒng)一管理,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09

最新評論