2017-04-25 4 views
0

versucht angluar Route Konstrukte zu lernen, aber ich kann nicht auf ngRoute UmsetzungAngular Route Implementierung nicht

Die Definition meiner app

var app= angular.module('app', ['ngMaterial', 'ngRoute']); 

Die Konfiguration

app.config(['$routeProvider', function($routeProvider) { 
    $routeProvider.otherwise({redirectTo: '/'}); 
}]); 

Meine Richtlinie den Router verwenden

app.directive("applicationDirective", function($router) { 

    return { 
     restrict : "E", 
     templateUrl: 'app/templates/application.html', 
     controller: 'applicationController' 
    }; 

}); 

Und meine UMSETZUNG in HTML

<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css"> 

     <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.js"></script> 
     <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular-route.js"></script> 
     <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular-animate.js"></script> 
     <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular-aria.js"></script> 
     <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular-messages.js"></script> 
     <script src="https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.js"></script> 

     <script src="app/app.js"></script> 

Scheint in Ordnung sein; aber scheitert ... Mit:

angular.js:14525 Error: [$injector:unpr] Unknown provider: $routerProvider <- $router <- applicationDirectiveDirective 
http://errors.angularjs.org/1.6.4/$injector/unpr?p0=%24routerProvider%20%3C-%20%24router%20%3C-%20applicationDirectiveDirective 
    at angular.js:66 
    at angular.js:4789 
    at Object.getService [as get] (angular.js:4944) 
    at angular.js:4794 
    at getService (angular.js:4944) 
    at injectionArgs (angular.js:4969) 
    at Object.invoke (angular.js:4995) 
    at angular.js:8110 
    at forEach (angular.js:403) 
    at Object.<anonymous> (angular.js:8108) 

Hat jemand einen Hinweis, wie man es löst.

Grüße n00n

Antwort

1

Sie müssen in der Config-Funktion-Routing. Diese Richtlinie wird nicht benötigt und funktioniert nicht so. Check this out: https://www.w3schools.com/angular/angular_routing.asp

+0

declare 'ng-app' und Richtlinie in html Körper –

+0

In Ihrem Beispiel jede Route eine eigene HTML-Vorlage hat? Ich würde gerne zwischen mehreren Vorlagen innerhalb des Körpers wechseln .... – n00n

+0

Warum sollte ich "ng-app" im Körper deklarieren? – n00n

Verwandte Themen