У меня есть фабрика, которую я использую для обновления своих данных в моем сервисе отдыха. Если я жестко закодирую идентификатор в нем, обновления будут прекрасны, если я попытаюсь передать пареметр с помощью моего json-документа, json передается в сервис остального, но пареметр не передается на завод, поэтому мой restUrl не должным образом сгенерированный как отсутствующий itemId.Передача JSON и параметров на заводские контроллеры в Angularjs
завод:
angular.module('myApp')
.factory('updateItem', function ($resource) {
return $resource('http://someserviceUrl/items/:itemId', {}, {
update: {method: 'PUT', params: {itemId: '@itemId'}}
});
});
контроллер:
$scope.itemId = 21;
var itemData = {"orderItem": {"itemHdr": {
"itemId": "",
"itemDescription":"Item Description",
"typeCd": "someType",
"salesPgm":"thisProgram",
"onSale": true
}
};
updateRfp.update($scope.itemData,$scope.itemId)
.$promise.then(function(res) {
console.log('updateItem.update triggered!');
$scope.results = 'Item '+ res.code + ' has been saved.';
});
Am Я не проходя Itemid правильно? В документации, которую я прочитал, показан этот метод передачи переменных между контроллером и фабрикой, но он не показывает, как это сделать, когда вы выполняете комбинацию json и параметра.
Ах да, я все повернулось вокруг. Спасибо что подметил это! :) Итак, теперь мое обновление выглядит так: updateRfp.update ({itemId: $ scope.itemId}, $ scope.itemData) - В интересах любого, кто может с этим бороться. –