【发布时间】:2015-04-18 12:41:32
【问题描述】:
我正在尝试将 jquery 的 $.ajax 函数与 knockout.js 映射插件一起使用,此处使用测试 api:http://rest.learncode.academy/
返回的数据格式不正确。我的 js 看起来像这样:
function FromDb(){
$.ajax({
type: 'GET',
url: 'http://rest.learncode.academy/api/johnbob/friends',
//dataType: "json",
success: function(data) {
console.log("I have friends!", data[0]); //returns all of johnbob's friends
myResult = data[0];
return myResult
}
});
//return{ name: 'test' }
}
function MaptoKo(frnd){
var map = ko.mapping.fromJS(frnd);
return map;
}
var obj={
friends:ko.observable(new MaptoKo(new FromDb())),
}
ko.applyBindings(obj.friends);
因为 api 返回一个数组,我只需要一个对象,我使用 data[0] 来获取数组中的第一项。当我注释掉 ajax 调用并取消注释 //return{ name: 'test' } 时,我得到了我想要的结果,我只是不确定为什么它不能使用 ajax 调用。
【问题讨论】:
标签: jquery ajax knockout.js knockout-mapping-plugin