使用vue3.x+vite+element-ui+vue-router+vuex+axios搭建項(xiàng)目
一. 參考文檔
二. vite搭建項(xiàng)目
- 安裝
# npm 安裝 npm init vite@latest # yarn 安裝 yarn create vite # 快速安裝vue模板項(xiàng)目 yarn create vite my-vue-app --template vue npm init vite@latest my-vue-app -- --template vue

- 運(yùn)行
npm run dev # or yarn dev

三. 配置element-ui
- 下載包
npm install element-plus --save
修改src/main.js
import { createApp } from 'vue'
import ElementPlus from 'element-plus';
import 'element-plus/lib/theme-chalk/index.css';
import App from './App.vue'
const app = createApp(App)
app.use(ElementPlus)
app.mount('#app')
驗(yàn)證是否配置成功

如果組件要按需引入的話(huà)可以參考文檔介紹

四. 配置vue-router
從vue2遷移
安裝
npm install vue-router@4
創(chuàng)建src/router/index.js文件

import { createRouter, createWebHistory } from 'vue-router'
const routes = [
{
path: '/demo',
name: 'demo',
component: () => import('../views/demo.vue')
}
]
const router = createRouter({
history: createWebHistory(),
routes
})
export default router
修改main.js
import { createApp } from 'vue'
import ElementPlus from 'element-plus';
import 'element-plus/lib/theme-chalk/index.css';
// 引入路由配置
import router from './router/index'
import App from './App.vue'
const app = createApp(App)
app.use(ElementPlus)
// 注冊(cè)
app.use(router)
app.mount('#app')
修改App.vue添加路由視圖
<template>
<el-button type="primary">按鈕</el-button>
<router-view></router-view>
</template>
<script>
export default {
name: 'app'
}
</script>
創(chuàng)建src/views/demo.vue文件

經(jīng)過(guò)以上的過(guò)程,訪問(wèn)http://localhost:3000/demo 就可以看到一下界面,表明我們的路由配置成功~

五. 配置vuex 安裝
npm install vuex@next --save
創(chuàng)建src/store/index.js文件

import { createStore } from "vuex";
const store = createStore({
state () {
return {
app: '我是app'
}
},
mutations: {
},
actions: {
}
})
export default store
修改src/main.js
import { createApp } from 'vue'
import ElementPlus from 'element-plus';
import 'element-plus/lib/theme-chalk/index.css';
import router from './router/index'
// 引入文件
import store from './store/index'
import App from './App.vue'
const app = createApp(App)
app.use(ElementPlus)
app.use(router)
// 注冊(cè)
app.use(store)
app.mount('#app')
在App.vue中查看是否配置成功

能夠成功打印測(cè)配置成功

六. 配置axios
安裝
npm install axios -S
創(chuàng)建src/utils/request.js
import axios from 'axios'
const services = axios.create({
baseURL: 'https://api.apiopen.top',
timeout: 6000
})
// 請(qǐng)求攔截
services.interceptors.request.use(config => {
// 在這可以添加一些請(qǐng)求頭的邏輯,如配置token
return config
}, error => {
return Promise.reject(error)
})
// 響應(yīng)攔截
services.interceptors.response.use(response => {
// 在這可以根據(jù)實(shí)際后臺(tái)的響應(yīng)值去進(jìn)行判斷,如code: 0 或者登錄失效跳轉(zhuǎn)到登錄頁(yè)等
return response.data
}, error => {
return Promise.reject(error)
})
export default services

創(chuàng)建src/api/app.js配置氣你跪求方法
import request from '../utils/request'
export const send = () => {
return request({
url: '/getJoke',
method: 'get',
params: {
page: 1,
count: 2,
type: 'video'
}
})
}

在App.vue引入測(cè)試
<template>
<el-button type="primary">按鈕</el-button>
<router-view></router-view>
</template>
<script>
// 引入請(qǐng)求方法
import { send } from "./api/app";
export default {
name: "app",
async mounted() {
console.log("store>>>", this.$store.state.app);
// 請(qǐng)求
const res = await send()
console.log('res>>>', res)
},
};
</script>
查看瀏覽器是否請(qǐng)求成功

七. 總結(jié)
經(jīng)過(guò)以上幾步就可以搭建一個(gè)簡(jiǎn)單的vue工程化項(xiàng)目,但是實(shí)際開(kāi)發(fā)當(dāng)中肯定不能這么簡(jiǎn)單,比如別名的配置,這個(gè)時(shí)候就需要修改vite.config.js去進(jìn)行別名的配置,還有路由權(quán)限的控制以及ui庫(kù)sass變量的替換等等…
本篇文章就到這里了,希望能給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
- vue3使用axios并封裝axios請(qǐng)求的詳細(xì)步驟
- Vue3 axios配置以及cookie的使用方法實(shí)例演示
- 前端vue3使用axios調(diào)用后端接口的實(shí)現(xiàn)方法
- 關(guān)于vue3.0使用axios報(bào)錯(cuò)問(wèn)題
- Vue3在Setup中使用axios請(qǐng)求獲取的值方式
- Vue3如何使用axios發(fā)起網(wǎng)絡(luò)請(qǐng)求
- 關(guān)于Vue3使用axios的配置教程詳解
- Vue3中使用typescript封裝axios的實(shí)例詳解
- vue3 axios安裝及使用示例詳解
相關(guān)文章
java對(duì)圖片進(jìn)行壓縮和resize縮放的方法
本篇文章主要介紹了java對(duì)圖片進(jìn)行壓縮和resize調(diào)整的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07
Springboot通過(guò)谷歌Kaptcha?組件生成圖形驗(yàn)證碼功能
Kaptcha是谷歌開(kāi)源的一款簡(jiǎn)單實(shí)用的圖形驗(yàn)證碼組件。我個(gè)人推薦它的最大原因是容易上手,采用約定大于配置的方式,快速契合到項(xiàng)目中,這篇文章主要介紹了Springboot通過(guò)谷歌Kaptcha組件生成圖形驗(yàn)證碼的方法,需要的朋友可以參考下2023-05-05
springboot構(gòu)建docker鏡像并推送到阿里云
本文主要介紹了springboot構(gòu)建docker鏡像并推送到阿里云,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05
Java實(shí)現(xiàn)curl調(diào)用帶參數(shù)接口方法
本文主要介紹了Java實(shí)現(xiàn)curl調(diào)用帶參數(shù)接口方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-04-04
java中棧和隊(duì)列的實(shí)現(xiàn)和API的用法(詳解)
下面小編就為大家?guī)?lái)一篇java中棧和隊(duì)列的實(shí)現(xiàn)和API的用法(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05
Spring Boot實(shí)現(xiàn)郵件發(fā)送必會(huì)的5種姿勢(shì)
這篇文章主要給大家介紹了關(guān)于Spring Boot實(shí)現(xiàn)郵件發(fā)送必會(huì)的5種姿勢(shì),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Spring Boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
Spring boot攔截器實(shí)現(xiàn)IP黑名單的完整步驟
這篇文章主要給大家介紹了關(guān)于Spring boot攔截器實(shí)現(xiàn)IP黑名單的完整步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Spring boot攔截器具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06
SpringBoot MongoDB與MongoDB GridFS基本使用
這篇文章主要為大家介紹了SpringBoot MongoDB與MongoDB GridFS基本使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07

