When I try to load the "test" state or any of these state, controllers does not affect. Template are changed perfectly but no data comes from the mentioned controller in state configuration.
And I did not use ng-controller directive any where.
myApp.config(function($stateProvider,$urlRouterProvider){
$stateProvider.state('task',
{
url:'/task',
controller:"TasksController",
views:{
"sidebar":{templateUrl:'/partial/task/taskcreateform.html'},
"content":{templateUrl:'/partial/task/taskgrid.html'}
}
})
.state('notes',
{
url:'/notes',
controller:"TasksController",
views:{
"sidebar":{templateUrl:'/partial/task/taskcreateform.html'},
"content":{templateUrl:'/partial/task/taskgrid.html'}
}
})
.state('test',
{
url:'/test/:id',
controller:"AtTestController",
views:{
"sidebar":{templateUrl:'/partial/task/taskupdateform.html'},
"content":{templateUrl:'/partial/test.html'}
}
})
.state('edittask',
{
url:'/edittask/:editabletaskid',
controller:"TasksController",
views:{
"sidebar":{templateUrl:'/partial/task/taskupdateform.html'},
"content":{templateUrl:'/partial/task/taskgrid.html'}
},
resolve:{
editabletask: function($stateParams,Task){
Task.get({id:$stateParams.editabletaskid},
function(response){
return response;
},
function(err){
console.log(err);
});
}
}
});
$urlRouterProvider.otherwise('task');
});
And My one Controller is :
////////////////////TEST CONTROLLER/////////////
myApp.controller("AtTestController",function($scope){
$scope.appname="Rahul Apps";
$scope.name=function(){
console.log($scope.appname);
}
$scope.name();
});
The point is:
E.g. instead of this:
we need that:
Check the doc for the difference:
Views override state's template properties