2016-03-25 8 views
0

gibt es keine Möglichkeit, diesen Controller zu implementieren, sondern finden Sie eine .json finden Sie eine .html, um dies dynamisch zu ändern templateUrl (sorry für mein schlechtes Englisch):gibt es keine Möglichkeit, diesen Controller zu implementieren, sondern finden Sie stattdessen eine .json finden ein .html, um diese TemplateUrl

.when('/news/:itemId',{ 
 
     templateUrl: 'this template', 
 
     controller: 'ItemDetailCtrl', 
 
     title: 'Artículo' 
 
     }) 
 

 
.controller('ItemDetailCtrl', ['$scope', '$routeParams', '$http', 
 
    function($scope, $routeParams, $http) { 
 
    $http.get('json/news/' + $routeParams.itemId + '.json').success(function(data) { 
 
     $scope.item = data; 
 
    }); 
 
    }]);

Antwort

0

Sie können templateUrl als Funktion verwenden. Es nimmt die Parameter als Argument und sollte eine Zeichenfolge zurückgeben.

.when('/news/:itemId',{ 
    templateUrl: function(params) { 
    //Do some stuff and return templateURL 
    return 'json/news/' + params.itemId + '.json' 
    }, 
    controller: 'ItemDetailCtrl', 
    title: 'Artículo' 
}) 

Ich bin mir nicht sicher, ob es mit * .json funktioniert, thoug.

Hier ist die Dokumentation von .when: https://docs.angularjs.org/api/ngRoute/provider/ $ routeProvider # wenn