我有一个页面,其中有一个下拉列表,我的目标是当我从下拉列表中选择任何值并单击Next,它将使用ngRouteProvider切换到下一页并执行$ http.post,我需要通过数据作为回报负载。
.when('/xyz/step2', {
templateUrl: partial('replacStep2.html'),
controller: 'xyzCtrl',
resolve: {
cardTypeDetails: ['$http', function ($http) {
return $http.post(appContext('xyz.json'),{});
}]
}
})
答案 0 :(得分:0)
您可以创建工厂并在其中设置变量,稍后您可以将该工厂注入解析块并通过它访问变量。
resolve: {
cardTypeDetails: ['$http','sharedFactory', function ($http,sharedFactory) {
console.log(sharedFactory.sharedVariable); //use it like this
return $http.post(appContext('xyz.json'),{});
}]
}
和工厂
angular.module('demoApp').factory('sharedFactory',function(){
return {
sharedVariable:null
};
});
或者以同样的方式,您可以使用$rootScope
来传递变量(但如果您使用大量的变量,则不能提高性能)
Passing variables from one controller to another with $rootscope