Vue3常用组件引入(个人学习记录)

一、element-plus

1.下载

pnpm install element-plus

2.引入

// main.ts
import { createApp } from 'vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import App from './App.vue'

const app = createApp(App)

app.use(ElementPlus)
app.mount('#app')

二、axios

1.下载

npm install axios

2.引入

import axios from 'axios'
App.prototype.$axios = axios
//全局注册,使用方法为:this.$axios

3.配置axios,添加拦截器

在src目录下新建一个request文件夹,在里面新建index.ts(或者.js)文件,编辑代码如下:

import axios from 'axios'

// 创建一个 axios 实例
const service = axios.create({
	baseURL: '/api', // 所有的请求地址前缀部分
	timeout: 60000, // 请求超时时间毫秒
	withCredentials: true, // 异步请求携带cookie
	headers: {
		// 设置后端需要的传参类型
		'Content-Type': 'application/json',
		'token': 'your token',
		'X-Requested-With': 'XMLHttpRequest',
	},
})

// 添加请求拦截器
service.interceptors.request.use(
	function (config) {
		// 在发送请求之前做些什么
		return config
	},
	function (error) {
		// 对请求错误做些什么
		console.log(error)
		return Promise.reject(error)
	}
)

// 添加响应拦截器
service.interceptors.response.use(
	function (response) {
		console.log(response)
		// 2xx 范围内的状态码都会触发该函数。
		// 对响应数据做点什么
		// dataAxios 是 axios 返回数据中的 data
		const dataAxios = response.data
		// 这个状态码是和后端约定的
		const code = dataAxios.reset
		return dataAxios
	},
	function (error) {
		// 超出 2xx 范围的状态码都会触发该函数。
		// 对响应错误做点什么
		console.log(error)
		return Promise.reject(error)
	}
)

export default service

4.使用axios发送请求

在src目录下新建一个apis文件夹,这里面放入今后所有的请求文件,例如新建一个请求用户信息的接口user.ts,代码如下:

// 导入axios实例
import httpRequest from '@/request/index'

// 定义接口的传参
interface UserInfoParam {
	userID: string,
	userName: string
}

// 获取用户信息
export function apiGetUserInfo(param: UserInfoParam) {
    return httpRequest({
		url: 'your api url',
		method: 'post',
		data: param,
	})
}

5.接着在具体业务页面里使用这个请求,例如:

<script setup lang="ts">
import { onMounted } from 'vue'
import { apiGetUserInfo } from '@/apis/user'

function getUserInfo() {
	const param = {
		userID: '10001',
		userName: 'Mike',
	}
	apiGetUserInfo(param).then((res) => {
		console.log(res)
	})
}

onMounted(() => {
	getUserInfo()
})
</script>

`vue-router` 是 Vue.js 应用中常用的路由管理库,它允许你方便地在单页面应用 (SPA) 中导航。在 Vue 3 中,`router-link` 组件是用于创建可点击的链接,当用户点击这些链接时,会根据路由规则跳转到相应的视图。 使用 `router-link` 的基本步骤如下: 1. 首先,在你的 Vue 项目中,确保已经安装了 `vue-router`,可以通过运行 `npm install vue-router` 或者 `yarn add vue-router` 来添加。 2. 在你的 Vue 组件中,引入 `RouterLink` 组件: ```html <template> <router-link :to="{ name: 'yourRouteName', params: { paramKey: 'paramValue' } }"> <!-- 这里是链接的文本或标签 --> <a>导航到路由</a> </router-link> </template> ``` - `:to` 属性用于设置链接的目标路由,可以是一个字符串(例如 `/user/:id`)或一个对象(如上面的例子所示,包含名称 `name` 和参数 `params`)。 - 如果你想传递动态参数,可以在 `params` 对象中指定,如 `:paramKey`。 3. 配置路由: 在 `src/router/index.js` 或 `src/router.ts` 中配置路由,包括定义路由名称、路径、组件等: ```js import { createRouter, createWebHistory } from 'vue-router'; import Home from '@/views/Home.vue'; import User from '@/views/User.vue'; const routes = [ { path: '/', name: 'Home', component: Home, }, { path: '/user/:id', name: 'User', // 使用 prop 传递动态参数给子组件 props: true, component: User, }, ]; const router = createRouter({ history: createWebHistory(), // 使用浏览器的历史记录 API routes, }); export default router; ``` 4. 在 `router-view` 组件中,Vue Router 会渲染匹配当前激活路由的组件: ```html <template> <div id="app"> <router-view></router-view> </div> </template> ``` 相关问题: 1. 如何在 `router-link` 中使用通配符匹配动态路径? 2. 如何处理 `router-link` 的点击事件以及重定向? 3. Vue Router 的 `keep-alive` 功能如何与 `router-link` 结合使用?
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值