AngularJS 영역에서는 정교한 애플리케이션을 구축하려면 컨트롤러 간 데이터 교환이 가장 중요합니다. 서비스를 사용하여 이를 달성하는 방법을 살펴보겠습니다.
선택한 제품을 장바구니에 추가하려는 시나리오에서는 서비스를 중개자로 활용할 수 있습니다.
AngularJS의 Factory를 이용하여 서비스 Factory를 초기화합니다. 기능:
app.factory('productService', function() { var productList = []; var addProduct = function(newObj) { productList.push(newObj); }; var getProducts = function(){ return productList; }; return { addProduct: addProduct, getProducts: getProducts }; });
ProductController와 CartController 모두에 productService를 포함합니다.
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는 항상 서비스에 저장된 최신 productList에 액세스할 수 있습니다.
위 내용은 서비스를 사용하여 AngularJS의 컨트롤러 간에 데이터를 공유하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!