0
我有一个应用程序,显示一个发布按钮的数据表。您可以选择行,然后单击发布它们。选定的数据以必要的json格式打包并通过ajax发送,以快速检查数据是否有任何依赖关系。如果存在依赖关系,则会返回错误消息和这些依赖关系的列表。然后,您必须选择依赖项加上父项并尝试再次发布。问题是在将数据操作到正确的json格式并发送给第一个调用之后,数据似乎在模型中完全无法使用和丢失......我可以拨打一次电话,但不能再次拨打电话。任何帮助深表感谢!这是我的控制器:恢复安博数据
export default Ember.ArrayController.extend({
actions: {
publishSubmit: function(){
var checkedItems = this.get('model').filterBy('isChecked', true);
if(checkedItems.length > 0){
this.send('dependencyCheck', checkedItems);
}
else{
this.announce.error('No items selected for publish.');
}
},
dependencyCheck: function(items){
var _this = this, data = [];
items.forEach(function(item){
delete item._data.isChecked;
delete item._data.sortByDate;
item._data.publisherId = item._data.id;
delete item._data.id;
item._data.updatedDate = null;
data.push(item._data);
});
//data formating(required)
data = _this.capitalizeAll(data);
data = JSON.stringify(data);
console.log(data);
Ember.$.ajax({
type: 'POST',
dataType: 'json',
contentType: 'application/json',
beforeSend : function(xhr) {
xhr.setRequestHeader("Token", sessionStorage.getItem('authToken'));
},
url: config.host + '/AssessmentPublishService/DependentPublishableItems',
data: data
}).then(function(dependencies){
var processDependencies = _this.processResponseData(dependencies);
if(dependencies.Status === "Success"){
console.log("ProccessD");
console.log(processDependencies);
return JSON.stringify(processDependencies);
}
else{
return this.announce.error('Failed to process.');
}
});
}
}
}
你绝对钉了它。我通过操纵私人数据误解了我正在做的事情。一旦修改,我就永久地修改了数据。所以我按照你的建议做了,并将其零碎地推入一个新的结构。我不太了解地图/序列化方法。它可能高于我的薪酬等级。非常感谢你的帮助! – campatsky