var app = angular.module('plunker', []);
app.config(['$routeProvider',
function($routeProvider) {
$routeProvider
.when('/viewA', {
templateUrl: 'resolveView.html',
controller: 'resolveCtrlA',
resolve: {
resolvedVal: function() {
return '1. CtrlA resolved';
}
}
})
.when('/viewB', {
templateUrl: 'resolveView.html',
controller: 'resolveCtrlB',
resolve: {
resolvedVal: function($http) {
$http.get('data.json').success(function(data) {
console.log('2. json resolved from provider');
});
return '1. CtrlB resolved';
}
}
});
}
]);
app.controller('MainCtrl', function($scope, $location) {});
app.controller('resolveCtrlA', function($scope, $http, resolvedVal) {
$scope.val = resolvedVal;
console.log(resolvedVal);
$http.get('data.json').success(function(data) {
$scope.data = data;
console.log('2. json resolved from controller');
});
});
app.controller('resolveCtrlB', function($scope, $http, resolvedVal) {
$scope.val = resolvedVal;
console.log(resolvedVal);
$http.get('data.json').success(function(data) {
$scope.data = data;
console.log('3. json resolved from controller');
});
});
<!DOCTYPE html>
<html ng-app="plunker">
<head>
<meta charset="utf-8" />
<title>AngularJS Plunker</title>
<script>document.write('<base href="' + document.location + '" />');</script>
<link rel="stylesheet" href="style.css" />
<script data-require="angular.js@1.0.x" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.js" data-semver="1.0.7"></script>
<script src="app.js"></script>
</head>
<body ng-controller="MainCtrl">
<a href="#/viewA">View A</a>
<a href="#/viewB">View B</a>
<div ng-view></div>
</body>
</html>
/* Put your css in here */
a {
color: blue;
cursor: pointer;
text-decoration: underline;
}
ul li ul {
display: none;
}
.open {
display: block;
}
{{val}}
<hr/>
{{data}}
[
{
"letter": "A",
"fruit": "Apple"
},
{
"letter": "B",
"fruit": "Bannana"
},
{
"letter": "C",
"fruit": "Cherry"
}
]