Vue2使用axios,request.js和vue.config.js
1.配置request.js,用来请求数据

import axios from 'axios' // 1:利用axios对象的方法create,创建一个axios实例
// 2:request就是axios,但可以稍加配置
const request = axios.create({
baseURL: '/api', // 注意!! 这里是全局统一加上了 '/api' 前缀,也就是说所有接口都会加上'/api'前缀在,页面里面写接口的时候就不要加 '/api'了,否则会出现2个'/api',类似 '/api/api/user'这样的报错,切记!!!
timeout: 5000
}) // request 拦截器,请求拦截器,在发请求之前,请求拦截器可以检测到
// 可以自请求发送前对请求做一些处理
// 比如统一加token,对请求参数统一加密
request.interceptors.request.use(config => {
config.headers['Content-Type'] = 'application/json;charset=utf-8'; // config.headers['token'] = user.token; // 设置请求头
return config
}, error => {
return Promise.reject(error)
}); // response 拦截器, 响应拦截器
// 可以在接口响应后统一处理结果
request.interceptors.response.use(
response => {
let res = response.data;
// 如果是返回的文件
if (response.config.responseType === 'blob') {
return res
}
// 兼容服务端返回的字符串数据
if (typeof res === 'string') {
res = res ? JSON.parse(res) : res
}
return res;
},
error => {
console.log('err' + error) // for debug
return Promise.reject(error)
}
) // 对外暴露
export default request
2.再main.js中注册

// 引入axios配置
import request from './api/request';
Vue.prototype.request = request
3.接下来就可以在页面中发送请求,如

// 新增or修改
save() {
this.request.post("/user/saveOrUpdate", this.form).then((res) => {
if (res) {
this.$message.success("保存成功");
this.dialogFormVisible = false;
this.load();
} else {
this.$message.error("保存失败");
this.dialogFormVisible = false;
}
});
}

// 删除
handleDelete(id) {
this.request.delete("/user/delete" + id).then((res) => {
if (res) {
this.$message.success("删除成功");
this.load();
} else {
this.$message.error("删除失败");
}
});
} // 批量删除
deleteBatch(){
let ids =this.multipleSelection.map(v=>v.id) //{[],[],[]}=>[1,2,3]
this.request.post("/user/deleteBatch" , ids).then((res) => {
if (res) {
this.$message.success("批量删除成功");
this.load();
} else {
this.$message.error("批量删除失败");
}
});
}
Vue2使用axios,request.js和vue.config.js的更多相关文章
- Vue项目搭建常用的配置文件,request.js和vue.config.js
request.js用来请求数据,封装的代码如下: import axios from 'axios' const request = axios.create({ timeout: 5000 }) ...
- webpack.config.js和vue.config.js的区别
webpack.config.js是webpack的配置文件,所有使用webpack作为打包工具的项目都可以使用,vue的项目可以使用,react的项目也可以使用. vue.config.js是vue ...
- Vue.js CLI4 Vue.config.js标准配置 (最全注释)
前言: Vue.js CLI工具 不知不觉发展到了4.0时代,CLI给人最直白的感受是没有了build文件夹跟config文件夹,所有的配置都在Vue.config.js完成.那么该文件的配置至关重要 ...
- vue-cli & webpack & vue.config.js
vue-cli & webpack & vue.config.js configureWebpack // vue.config.js module.exports = { confi ...
- vue.config.js常用配置
使用vue-cli3.0搭建项目比之前更简洁,没有了build和config文件夹. vue-cli3的一些服务配置都迁移到CLI Service里面了,对于一些基础配置和一些扩展配置需要在根目录新建 ...
- 减少打包组件vue.config.js——Webpack的externals的使用
vue.config.js module.exports = { configureWebpack:{ externals: { vue: 'Vue', 'vue-router':'VueRouter ...
- vue-cli3的vue.config.js文件配置,生成dist文件
//vue.config.jsonconst path = require('path'); // const vConsolePlugin = require('vconsole-webpack-p ...
- Vue技术点整理-vue.config.js
1,proxy代理解决本地开发环境跨域问题 配置proxy代理后,proxy会将任何未知请求 (没有匹配到静态文件的请求) 代理到 https://192.168.3.49:8080 vue.conf ...
- vue3.0 vue.config.js 配置实战
今天讲述一下vue-config.js配置,我们前面搭建好脚手架会发现,这个对比2.x版本少了很多东西,没有build的配置,也没有webpack的配置,那么问题来了,我们如何去开发我们的项目呢,比如 ...
- vue cli3.3 以上版本配置vue.config.js
// vue.config.js 配置说明//官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions// 这里只 ...
随机推荐
- 如何设置 iOS 开发环境
原文:https://lwebapp.com/zh/post/how-to-set-up-the-ios-development-environment 介绍 移动互联网时代,掌握 iOS 开发和安卓 ...
- css3字体颜色渐变
效果图: 代码: <span class="titleName">这是个测试字体</span> .titleName { background: linea ...
- Linux下的zip和tar压缩解压缩命令详解
一.zip压缩工具 zip的压缩包在windows和linux中都比较常用,它可以压缩目录和文件,压缩时录时,需要指定目录下的文件.zip后面先跟目标文件名,即压缩后得自定义压缩包名,然后跟要压缩的文 ...
- windows 设置修改本地 hosts 访问 github 快速访问 提高访问 github 速度
获取IP地址 查询 以下域名IP地址 github.com github.global.ssl.fastly.net assets-cdn.github.com 通过在线网址查询:https://we ...
- 清华大学资源库 和 CocoaPods / Specs 等多个 资源库共存
1.如果本地pod 索引文件库只有清华大学的资源库[https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git].如果新在github上制 ...
- 服务器部署 halo博客项目
2020-8-9 13:45:14 有个进阶方法! 如果静态资源加载缓慢如图片,头像 则用CDN加速 (确实很秀!) https://cdn.jsdelivr.net/gh/你的用户名/你的仓库 ...
- idea引入ojdbc包报错
网上下载或者让同事传两个jar过来,ojdbc6-11.2.0.7.0.jar 以及jconn3.0.jar 放入同一个文件夹中: 在此文件夹中cmd如下:回车,进入cmd控制台. 输入如下两个命令: ...
- 【ADB命令】安装app
在电脑上安装以下指令 adb install app的文件位置
- Android Studio实现数据库的所有操作
采用android studio自带的数据库实现stu数据库和stu表的创建,增删改查和关闭 这是项目的大致结构 主界面 子界面 布局源码 <!-- Main --> <?xml v ...
- elmentui 表单验证问题
<template> <div class="container"> <el-form ref="ruleForm" :model ...