0
$ scope.watchを使用して、あるコントローラから別のコントローラに1つのデータを渡して渡します。これは正常に動作しますが、これを別のhtmlファイルで行うと、データは最初のクリックでは転送されません。ブラウザがリフレッシュされるためです。しかし、クロムで戻る矢印をクリックして値を設定してクリックすると、2番目のページで値を取得できます。どのように私はこれを解決することができます。解決策を教えてください。
var data = {
Quantity: ''
};
return {
getQuantity: function() {
return data.Quantity;
},
setQuantity: function(quantity) {
data.Quantity = quantity;
}
};
.controller('DetailsCtrl', function($scope, $http, Data) {
$scope.quantity = '';
$scope.$watch('quantity', function(newValue50, oldValue50) {
if (newValue50 !== oldValue50)
Data.setQuantity(newValue50);
});
})
.controller('FifthCtrl', function($scope, $http, Data) {
$scope.$watch(function() {
return Data.getQuantity();
}, function(newValue50, oldValue50) {
if (newValue50 !== oldValue50)
$scope.quantity = newValue50;
});
})
ありがとうございます。 – user3751835