コントローラ内でサービスを渡そうとしましたが、少し問題があります。1つのコントローラから別のコントローラへの角度情報のパス
私がやっていることはショッピングカートです。私はアイテムのリストを持っています。ボタンを押すと、それらのアイテムがカートに追加されます。そして、それらのアイテムをカート内の別のページを別のコントローラを使用しているので、カート用のファクトリを使用しようとしていますが、コントローラ内にファクトリオブジェクトを設定できるかどうかはわかりません。
ここに私のコードは、あなたが正しい方向に私を指すことができることを願っています。
var app = angular.module("Shop", []);
app.factory('DataService', function() {
var cart = [];
var set = function (data) {
cart = data;
}
var get = function() {
return cart;
}
});
app.controller("catalogController", function ($scope, $http) {
$scope.bookStore = {
selected: {},
books: null
};
$scope.cart = [];
$http.get("json/books.json")
.success(function (data) {
console.log(data);
$scope.bookStore.books = data;
})
.error(function (err) {
});
$scope.addToCart = function (book) {
var found = false;
$scope.cart.forEach(function (item) {
if (item.id === book.id) {
item.quantity++;
found = true;
}
});
if (!found) {
$scope.cart.push(angular.extend({
quantity: 1
}, book));
}
};
$scope.removeFromCart = function (item) {
var index = $scope.cart.indexOf(item);
$scope.cart.splice(index, 1);
};
$scope.getCartPrice = function() {
var total = 0;
$scope.cart.forEach(function (product) {
total += product.price * product.quantity;
});
return total;
};
});
app.controller("checkoutController", function ($scope, DataService) {
$scope.cart = DataService;
});
可能な重複:http://stackoverflow.com/questions/20181323/passing-data-between-controllers-in-angular-js – Roy