问题描述
在vue中如何设置json文件的数据地址为http://localhost:8080/detail?id=111?
问题出现的环境背景及自己尝试过哪些方法
我自己写的json文件,因为一般的数据请求地址都是?id=111类型的,所以我用mock.js解析地址如下:
Mock.mock('/detail?id=:id',{code:0,data:data.detail})
json里的文件是这样:
然后请求函数要传参id,我写成:
相关代码
export function getDetail(id) {
return request(
{
url:'/detail',
params:{
id
}
}
)
}
但是还是报错了:
你这样是不行的,因为你的代码中写到
Mock.mock('/detail?id=:id',{code:0,data:data.detail})
这样的话mockjs会把api地址解析成/detail?id=:id
,把这当成了一个字符串了,所以造成了路径的不匹配,最终出现404。解决方法是:把代码改成:
Mock.mock(/\/detail/,{code:0,data:data.detail})
,改成这样,匹配/detail
就好,你加了参数也会匹配到这个路由的。