2015-01-06 76 views
0

當我將新數據保存到Angular中的DataStore時,我不想指定_id。系統自動分配一個。從查看網絡跟蹤,_id被傳回到應用程序的響應中 - https://baas.kinvey.com/appdata/appxxx/activities/54ac3d8671e2d7933b0116b4 - 但我沒有看到在Angular文檔中找到有關如何檢索_id以便我可以將它添加到現有列表中的方法或做其他處理。在角度應用程序中獲取新Kinvey數據的_id

var promise = $kinvey.DataStore.save('activities', { 
       text : $scope.newActivity.text , 
       duedate : '2015-01-01' 
      }); 
     promise.then(
      function() { 
       $scope.newActivity.text = ''; 
      }, 
      function (error) { 
       //Kinvey insert finished with error 
       alert("Error insert: " + JSON.stringify(error)); 
      }); 

回答

0

Kinvey實際上會在承諾中將對象返回給您,您可以從返回的對象中獲取_id。

promise.then(function(data) { 
    // Here's where you get your _id 
    $scope.newActivity.text = data._id; 
}, function(err) { 
    console.error(err); 
}); 
+0

感謝 也做到了,但......凡赫克會我發現這個? – jhoskins98

+0

對不起,@ jhoskins98!看起來Kinvey試圖在他們的[Concepts](http://devcenter.kinvey.com/angular/guides/concepts)頁面上解釋這一點,但我認爲那裏沒有那麼明顯。當我開始時,我發現Todd Motto的[AngularJS教程](https://www.airpair.com/angularjs/posts/angularjs-tutorial)非常出色。我在工作中的項目使用的承諾非常嚴重,以至於我很快適應了範式。還要研究鏈接承諾,這可能非常有用 - 儘管要確保正確的數據落入正確的承諾有點棘手。 –

相關問題