2016-07-05 10 views
2

Ich versuche, ein einfaches SPA mit angular und ngRoute/ngView zu erstellen. Ich kann es einfach nicht funktionieren lassen.

ich den Fehler: Angularjs: 68 nicht erfasste Fehler: [$ Injektor: modulerr] Nicht bestandene Modul DemoApp aufgrund instanziiert: Fehler: [$ Injektor: nomod] Module 'DemoApp' ist nicht verfügbar! Sie haben entweder den Modulnamen falsch geschrieben oder vergessen, ihn zu laden. Wenn Sie ein Modul registrieren, stellen Sie sicher, dass Sie die Abhängigkeiten als zweites Argument angeben.

Ich habe verschiedene Codebeispiele im Web sowie Youtube-Tutorials angeschaut und meinen Code mit denen verglichen, aber ich kann einfach nicht herausfinden, was ich falsch mache. Für mich sehen sie identisch aus.

Ich entschuldige mich im Voraus, dies scheint eine Frage zu sein, die in der Vergangenheit oft gestellt wurde, aber vorherige Antworten waren für mich keine Hilfe.

Dies ist meine HTML-Datei, sie heißt "test.html".

<html ng-app="demoApp"> 
    <head> 
     <title>My Angular App</title> 

    </head> 

    <body> 
     <h2>DemoApp Demo</h2> 
     <div> 
      <a href="#/partial1.html">Partial 1</a> 
      <a href="#/partial2.html">Partial 2</a> 
      <div ng-view></div>  
     </div> 
     <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.js"></script> 
     <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-route.js"></script> 
     <script src = "demoApp.js" /> 
    </body> 
</html> 

Das ist „demoApp.js“, ist es im selben Verzeichnis wie test.html

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

demoApp.config(['$routeProvider', function($routeProvider) { 
    $routeProvider 

     .when('/partial1', 
     { 
      controller: 'SimpleController', 
      templateUrl: 'Partials/partial1.html' 
     }).when('/partial2', 
     { 
      controller: 'SimpleController', 
      templateUrl: 'Partials/partial2.html' 
     }).otherwise({redirectTo: '/partial1'}); 
}]); 


demoApp.controller('SimpleController', function($scope){ 
    $scope.customers = [ 
     {name:'Victor', city:'Norrköping'}, 
     {name:'Mikael', city:'Göteborg'}, 
     {name:'Jocke', city:'Göteborg'}, 
     {name:'Skåne', city:'Ystad'} 
    ]; 

    $scope.addCustomer = function(){ 
     $scope.customers.push(
     { 
      name: $scope.newCustomer.name, 
      city: $scope.newCustomer.city 
     }); 
    } 
}); 

ich Partial1 und Partial2 nicht enthalten, da sie für das Problem irrelevant scheinen, wie sie sind nur einfache HTML-Dateien ohne Skripte.

Antwort

1

Ihr Fehler ist in der Linie

<script src="..." /> 

Sie können nicht selbst schließen script Tags, so sollte es

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

Plunker demonstriert Antwort: http://plnkr.co/edit/Mz1GRSFRxaUN9q6gUONl

+0

es Figured albern wäre etwas, so wie das. Hatte keine Ahnung, dass Sie Script-Tags nicht mit '/' beenden konnten. Vielen Dank, du hast meine Kopfschmerzen geheilt. – Flux

+0

Gern geschehen haha, auch schon treffe ich mich mit etwas albernem Kopf. Willkommen in der AngularJS Welt! –

Verwandte Themen