ho più controller per percorsi multipli:come riutilizzare una funzione in più controller
app.controller('FirstController', function ($scope) {
$scope.func = function() {
console.log('route 1');
}
}
app.controller('SecondController', function ($scope) {
$scope.func = function() {
console.log('route 2');
}
}
...
e una direttiva che utilizza il $scope.func
, in questo modo:
app.directive('thedirective', function() {
return {
link: function (scope, $element, attrs) {
$scope.func(attrs.thedirective);
}
}
});
$scope.func
è differente in ciascun controllore . Mi aspetto che $ scope.func registri "route 1" quando ci troviamo in route1 e FirstController è il controller corrente e per registrare "route 2" quando ci si trova nella route 2, ma solo "rout 1" è ciò che ottengo in console. potrebbe dirmi perché cambiare rotta non cambia $ scope of directive?
Forse la mia soluzione può aiutarti? http://stackoverflow.com/questions/26921071/initialize-scope-variables-for-multiple-controllers-angularjs/26921599#26921599 – arman1991