Vue在手机上请求post报错
题目描述
报错:"undefined is not an object (evaluating 'e.params.systemTag=p')"
我在axios里面这样封装了一下,在浏览器调试没有问题,到了手机就出现标题上面的报错,导致post请求就报错,get在手机正常,有懂的大佬帮忙解答一下吗?
代码如下
题目来源及自己的思路
这边是根据环境变量增加一个不同的标示
相关代码
let systemTag = ''// 区分 不同系统传不同参数 类似 type 的作用
switch (process.env.VUE_APP_OVER_LOAD) {
case 'one':
systemTag = '1'
break
case 'two':
systemTag = '2'
break
default:
systemTag = '1'
}
axiosX.interceptors.request.use(
function (config) {
const { url, method } = config
// 外部接口不需要此参数
const apiStr = '/asset-inspection'
if (url.includes(apiStr)) {
// 所有请求 都在 url 上加上 systemTag
console.log('axiosaxiosaxios', { config }, systemTag)
// console.log('config.data', config.data)
// config.params.systemTag = systemTag
if (method === 'post') {
console.log('我是post请求',config.data)
config.data.systemTag = systemTag
} else if (method === 'get') {
console.log('我是get请求',config.params)
config.params.systemTag = systemTag
}
}
// 在发送请求之前做些什么
return config
},
你期待的结果是什么?实际看到的错误信息又是什么?
解决报错问题,可以成功请求post请求
回答:
根据报错信息看,config.params.systemTag = systemTag
这句有问题。
你的那些console打印出来的都是什么啊?
以上是 Vue在手机上请求post报错 的全部内容, 来源链接: utcz.com/p/936585.html