vue3.0使用axios-二次封装

安装
npm install --save axios
在 main.js中引入
inport axios "axios"
在http文件夹中新建api.js文件
引入axios
inport axios "axios"
post、get请求进行封装

get 请求:

 export function get(url,api,params){
 	return	axios({
		method:'get',
		url:api,
		baseURL:url,
		params:params
	}).then(response => response.data).catch((err)=>{
		console.log(err)
	})
 }

postJson请求:

export function postJson(url.api,data){
	return axios({
		method:'post',
		url:api,
		baseURL:url,
		headers:{'Content-Type':'aplication/json'},
		data:data
	}).then(response => response.data).catch((err) => {
		console.log(err)
	})
}

postForm请求:

export  function posrForm(url,api ,data){
	return axios({
		method:'post',
		url:api,
		baseURL:url,
		headers:{'Content-Type':'application/x-www-form-urlencoded'},
		data:data,
		transformRequest:[function (data){
			let ret = '',
			for(let it in data){
				ret += encodeURIComponent(it) + "=" 6 encodeURIComponent(data[it]) + '&'
			}	
			return ret
		}]
	}).then(response => response.data).catch((err) => {
		console.log(err)
	})
}

封装完成了之后对他们进行输出(install方法将被作为Vue的参数调用)

export default{
	install(Vue){
		Vue.prototype.getAxios = (url,api,params) => get(url,api,params),
		Vue.prototype.pJson = (url,api,params) => postJson(url,api,params),
		Vue.prototype.pForm = (url,api,params) => postForm(url,api,params)
	}
}

在main.js中引入并且注册
import axiosApi from "@/http/api.js"
Vue.use(axiosApi)
axios有两个拦截器请求拦截器,响应拦截器可以进行处理
响应拦截器:

axios.intercepors.response.use(response => {
	if(response.data.code === 401){
		router.replace({
			path:'/login',
			query:{redirect: router.currentRoute.fullPath}
		})
	}
	return response
}, err => {
		if(err && err.response){
			switch(err.response.status){
				case 400:
					console.log("错误请求")
				break
				case 401:
					this.$store.commit('delToken')
					console.log("未授权,请重新登录")
				break
				case 403:
					console.log("拒绝访问")
				break
				case 404:
					console.log("请求错误,未找到该资源")
				break
				case 404:
					console.log("请求方法为允许")
				break
				case 408:
					console.log("请求超时")
				break
				case 500:
					console.log("服务器端出错")
				break
				case 501:
					console.log("网络未实现")
				break
				case 502:
					console.log("网络错误")
				break
				case 503:
					console.log("服务不可用")
				break
				case 504:
					console.log("网络超时")
				break
				case 505:
					console.log("http版本不支持该请求")
				break
				default:
					console.log(`连接错误${err.response.status}`)
			}
		}else{
			console.log('连接到服务器失败')
		}
})

请求拦截器:

axios.interceptors.request.use(config => {
	if(store.state.info.token){
		config.headers.common['token'] = store.state.info.token
	}
	return config
}, err => {
	return Promise.reject(err)
})
Vue 3.0是一种流行的JavaScript框架,用于构建用户界面。它具有响应式数据绑定和组件化的特性,使得开发者可以更轻松地构建交互式的Web应用程序。 Vue-video-player是一个基于Vue.js的视频播放器组件,它提供了一种简单的方式来在Vue应用程序中嵌入视频播放功能。它支持多种视频格式,包括MP4、WebM和Ogg等,并且提供了丰富的功能选项,如自定义控制条、全屏模式、播放速度调节等。 使用vue-video-player,你可以按照以下步骤来集成视频播放器到你的Vue 3.0应用程序中: 1. 首先,安装vue-video-player包。你可以使用npm或者yarn来进行安装: ``` npm install vue-video-player ``` 或者 ``` yarn add vue-video-player ``` 2. 在你的Vue组件中引入vue-video-player: ```javascript import VueVideoPlayer from 'vue-video-player'; import 'video.js/dist/video-js.css'; // 引入视频播放器样式 import 'vue-video-player/src/custom-theme.css'; // 引入自定义主题样式 export default { components: { VueVideoPlayer, }, // ... } ``` 3. 在模板中使用vue-video-player组件: ```html <template> <div> <vue-video-player :options="playerOptions"></vue-video-player> </div> </template> ``` 4. 在Vue组件的data选项中定义视频播放器的配置选项: ```javascript export default { data() { return { playerOptions: { sources: [{ src: 'path/to/your/video.mp4', type: 'video/mp4', }], // 其他配置选项... }, }; }, // ... } ``` 这样,你就可以在Vue应用程序中使用vue-video-player来播放视频了。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值