2013-08-28 8 views
213

ich diesen Fehler erhalten bei einem Upgrade von AngularJS 1.0.7 zu 1.2.0rc1.

Antwort

402

Das ngRoute-Modul ist nicht mehr Teil der Kerndatei angular.js. Wenn Sie $ verwenden weiterhin routeProvider dann werden Sie jetzt angular-route.js in Ihrem HTML enthalten müssen:

<script src="angular.js"> 
<script src="angular-route.js"> 

API Reference

Sie haben auch ngRoute als Abhängigkeit für Ihre Anwendung hinzuzufügen:

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

Wenn Sie stattdessen die Verwendung von angular-ui-router oder ähnlichem planen, dann entfernen Sie einfach die $routeProvider Abhängigkeit von Ihrem Modul .config() und ersetzen Sie sie durch den entsprechenden Profi Vider der Wahl (z.B. $stateProvider). Sie würden dann die ui.router Abhängigkeit verwenden:

var app = angular.module('MyApp', ['ui.router', ...]); 
+2

scheint, wie die 'ui-router' Projekt kann eine flexiblere Alternative sein, wenn Sie von Grund auf neu sind (https://github.com/angular- UI/UI-Router) – gatoatigrado

+0

Es funktioniert, danke :) –

+2

@gatoatigrado - Ich habe gerade festgestellt, wie alt die 'ui.state' Syntax war, als ich meine App von' eckigen-ui-Router' ** v0.0.1 ** upgraden zu ** v0.2.0 **, was bedeutet, dass es jetzt den Namen "ui.router" verwendet. Ich entschuldige mich für die Verwirrung. –

40

Zugabe zu scottys Antwort:

Option 1: Entweder sind diese in Ihrer JS-Datei:

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular-route.min.js"></script> 

Option 2: oder einfach nur benutzen die URL zum Herunterladen von 'angular-route.min.js' an Ihren lokalen Benutzer.

und dann (welche Option Sie auch wählen) fügen Sie diese 'ngRoute' als Abhängigkeit hinzu.

erklärt: var app = angular.module('myapp', ['ngRoute']);

Prost !!!

+5

Sorry, aber ich muss zugeben, dass dies sehr ähnlich zu der bereits gegebenen Antwort scheint ?? –

+2

... an anderen Stellen habe ich festgestellt, dass die Leute nicht in der Lage sind, den Link/die URL zum Herunterladen zu finden oder verweisen Sie auf die 'angular-route.min.js'. Das habe ich in Antwort gegeben und Ja, ich stimme der 'ngRoute'-Abhängigkeit zu, über die du gesprochen hast, also habe ich das auch in Meine Antwort hinzugefügt. – mayankcpdixit

+0

Ich bin mehr als ein bisschen müde von js Bibliothekshölle. Sicherlich muss es einen besseren Weg geben, als das richtige Modul Modul für Modul zu finden. –

3

In meinem Fall war es, weil die Datei mit falschem Umfang minimiert wurde. Verwenden Sie Array!

app.controller('StoreController', ['$http', function($http) { 
    ... 
}]); 

Kaffee Syntax:

app.controller 'StoreController', Array '$http', ($http) -> 
    ... 
Verwandte Themen