vue+axios 按钮连续点击多次导致数据多次提交

博客涉及Vue和Axios相关信息技术内容,但具体内容缺失。Vue是前端开发框架,Axios常用于数据请求。
let pending = []; //声明一个数组用于存储每个ajax请求的取消函数和ajax标识
let cancelToken = axios.CancelToken; //初始化取消请求的构造函数
let removePending = (config, f) => {
	let flagUrl =config.url
	if (pending.indexOf(flagUrl) !== -1) {
		if (f) {
			f('按钮点击太频繁');
			//如果你用了element ui的话
		// ElementUI.Message({
		// 	title: '警告',
		// 	message: '按钮点击太频繁',
		// 	type: 'error'
		// });
		} else {
			pending.splice(pending.indexOf(flagUrl), 1)
		}
	} else {
		if (f) {
			pending.push(flagUrl)
		}
	}
}
axios.interceptors.request.use(
	config => {
		config.cancelToken = new cancelToken((c) => {
			removePending(config, c);
		});
		return config;
	},
	err => {
		return Promise.reject(err);
	});
axios.interceptors.response.use(
	response => {
		removePending(response.config);
	},
	error => {
		pending = [];//接口报错的时候清空url数组
	});
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值