javascript - mockJS模拟ajax返回的并不是对象,而是string?
本文介绍了javascript - mockJS模拟ajax返回的并不是对象,而是string?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
以下是使用mock.js模拟的登录返回,发现返回的是string,并不是自己想要的object,因为后端目前的接口是返回了JSON(前端也没用jQuery的AJAX),所以这里并不希望在获取后再次转JSON。有解决办法吗?看了mock.js的文档,并无相关说法。
var data = Mock.mock('/login',{
code: 200,
msg: '登陆成功',
data: {}
});
解决方案
设置他的类型为json
//登录的接口
getLogin(){
var template={
'list': [
{
'id|+1':1,
'phone': 'admin',
'password': '123456'
}
]
}
Mock.mock(/\.json/,template)
},
$.ajax({
url:getLogin()+/\/\.json/,
dataType:'json',
}).done(function(data, status, jqXHR){
console.log(data)
var dataPhone;
var dataPassword;
for(var i=0; i<data.list.length; i++){
dataPhone = data.list[i].phone;
dataPassword = data.list[i].password;
}
if(phone == dataPhone && passwordValue == dataPassword){
console.log("登录成功")
}else{
console.log("登录失败")
return;
}
})
这篇关于javascript - mockJS模拟ajax返回的并不是对象,而是string?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文