如何在angular中传递函数调用的范围参数和对象

时间:2015-10-01 13:25:49

标签: angularjs angularjs-scope

HTML:

<button type="submit" ng-disabled="editForm.quantity{{product.productId}}.$invalid" ng-click="addProduct(product);" class="btn btn-info btn-sm">
                          <span class="glyphicon glyphicon-shopping-cart"></span>&nbsp;<span translate="global.form.addToCart"> Add to cart</span>
                      </button>

控制器:

$scope.addProduct = function (ViewProduct)
{
  CatalogAdd.addProductToCart(ViewProduct);
};

服务:

angular.module('brotzeitApp')
.factory('CatalogAdd', function ($resource, $rootScope) {
    return $resource('api/_add/catalog', {}, {
        'addProductToCart': { method:'GET'}
    });
});

Java功能:

public ResponseEntity<Cart> addProductToCart(final ViewProduct aProduct) throws URISyntaxException

所有这些都是预期的。完整的对象从html / js传递给java函数,我可以保存。 现在我想为函数添加另一个参数。 我尝试了以下内容。

控制器:

$scope.addProduct = function (ViewProduct)
{
  CatalogAdd.addProductToCart({orgid: $rootScope.orgid}, ViewProduct);
};

服务:

angular.module('brotzeitApp')
.factory('CatalogAdd', function ($resource, $rootScope) {
    return $resource('api/_add/catalog', {}, {
        'addProductToCart': { method:'GET', params:{orgid:$rootScope.orgid}}
    });
});

爪哇:

public ResponseEntity<Cart> addProductToCart(@RequestParam(value = "orgid" , required = true) final Long orgid,
final ViewProduct aProduct) throws URISyntaxException

现在只有&#34; orgid&#34;参数传递给java函数但不传递给ViewProduct。我尝试了几种方法来定义和传递orgid和ViewProduct对象,但没有成功。有关如何定义传递给我的java函数的方法/参数的任何提示吗?

0 个答案:

没有答案