2016-07-05 6 views
2

Я пытаюсь создать простой SPA, используя угловой и ngRoute/ngView. Я просто не могу заставить его работать.

Я получаю ошибку: angular.js: 68 Uncaught Ошибка: [$ Инжектор: modulerr] Не удалось создать экземпляр модуля DemoApp из-за: Ошибка: [$ Инжектор: nomod] модуль 'DemoApp' не доступен! Вы либо ошибочно написали имя модуля, либо забыли загрузить его. Если регистрация модуля гарантирует, что вы укажете зависимости в качестве второго аргумента.

Я рассмотрел различные примеры кода в Интернете, а также учебные пособия по YouTube и сравнил свой код с их, но я просто не могу понять, что я делаю неправильно. Для меня они выглядят одинаково.

Я извиняюсь заранее, это вопрос, который был задан в прошлом, но предыдущие ответы не были для меня никакой помощью.

Это мой HTML-файл, он называется «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> 

Это «demoApp.js», он находится в том же каталоге, 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 
     }); 
    } 
}); 

я не включил Partial1 и Partial2, как они кажутся не имеют отношения к проблеме, поскольку они только простые HTML-файлы без скриптов.

ответ

1

Ваша ошибка в линии

<script src="..." /> 

Вы не можете иметь закрывающиеся script теги, поэтому он должен быть

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

Plunker демонстрирует ответ: http://plnkr.co/edit/Mz1GRSFRxaUN9q6gUONl

+0

Фигурные было бы что-то глупо как это. Не имеет понятия, что вы не можете закончить теги скриптов с помощью '/'. Большое спасибо, вы вылечили мою головную боль. – Flux

+0

Приветствую вас, ха-ха, и я уже наткнулся на что-то глупое. Добро пожаловать в мир AngularJS! –

 Смежные вопросы

  • Нет связанных вопросов^_^