1.问题:
测试环境下,使用vconsole调试移动端,个别机型(iphone6s/vivo/个别huawei机型)和ipad调取接口失败,iphone11,honor等部分手机正常。经查找发现这些机型调接口使用post方式传参时,参数对象转为json格式时最后一行多了个逗号,导致参数格式不正确后端无法正确解析。
解决方法:
是因为引用了cdn的vconsole3.0.0版本,而此版本却指向了有bug的3.2.0版本,vconsole3.2.0版本重写了json.stringify方法,转为json格式时最后一行会多个逗号。改成npm下载的vconsole即可。
代码:
npm install vconsole@3.0.0
main.js里引入
import Vconsole from ‘vconsole’
if (process.env.VUE_APP_MODE === ‘test’) {
const vConsole=new Vconsole()
Vue.use(vConsole)
}
2.问题:
第一个问题里的机型,在使用json.parse转换localstorage本地存储的字符串时也会报错"json parse error:expected’}’"(本地存储的字符串是对象经过JSON.stringify转的)
原因:
也是vconsole原因
解决方法:
(1)更换vconsole
(2)改成vuex存储,使用插件存到本地也行
vconsole版本导致的传参问题
于 2020-12-31 13:25:12 首次发布