在 AngularJS 领域,控制器之间交换数据的需求对于构建复杂的应用程序至关重要。让我们探讨如何使用服务来实现此目的。
在您的场景中,如果您想要将选定的产品添加到购物车,您可以利用服务作为中介。
使用AngularJS的工厂初始化一个服务工厂函数:
app.factory('productService', function() { var productList = []; var addProduct = function(newObj) { productList.push(newObj); }; var getProducts = function(){ return productList; }; return { addProduct: addProduct, getProducts: getProducts }; });
将productService包含在ProductController和CartController中:
app.controller('ProductController', function($scope, productService) { $scope.callToAddToProductList = function(currObj){ productService.addProduct(currObj); }; }); app.controller('CartController', function($scope, productService) { $scope.products = productService.getProducts(); });
现在,当你点击一个产品时在 ProductController 中,调用 ProductService 的 addProduct 函数来填充 ProductList。 CartController 将始终可以访问服务中存储的最新产品列表。
以上是如何使用服务在 AngularJS 的控制器之间共享数据?的详细内容。更多信息请关注PHP中文网其他相关文章!