2013-12-23 5 views
0

Я использую версию 1.2.2 AngularJS и MVC 5, и у меня возникла проблема с получением кода службы.Угловое обслуживание не называется

Вот мои ссылки в моем _Layout.cshtml файле

div class="navbar-collapse collapse"> 
       <ul class="nav navbar-nav"> 
        <li>@Html.ActionLink("Home", "Index", "Home", null, new { @class = "navbar-brand" })</li> 
        <li>@Html.ActionLink("Albums", "Index", "Album")</li> 
</ul> 
</div> 

Мой модуль выглядит следующим образом

var app = angular.module('myApp', ['ngRoute']); 
app.config(function ($routeProvider) { 
    $routeProvider 
     .when('/Home', 
      { 
       controller: 'HomeController', 
       templateUrl: '/Views/Home/Index.cshtml' 
      }) 
     .when('/Album', 
      { 
       controller: 'AlbumController', 
       templateUrl: '/View/Album/Index.cshtml' 
      }) 
     .otherwise({ redirectTo: '/Home' }); 
}); 

Мои AlbumController выглядит следующим образом

app.controller('AlbumController', function ($scope, albumService) { 

    init(); 

    function init() { 
     $scope.albums = albumService.getAlbums(); 
    } 
}); 

Мои albumService выглядит следующим образом

app.service('albumService', function() { 
    this.getAlbums = function() { 
     return albums; 
    }; 

    var albums = [ 
     { 
      id: 1, Name: 'Foo', AlbumNumber: 1, 
      Songs: [ 
       { Id: 1, Name: 'Bar', AlbumId: 1, TrackNumber: 1 } 
      ] 
     } 
    ]; 
}); 

Мои View/Album/Index.cshtml выглядит следующим образом:

{{}} album.Name

Проблема заключается в том, что название альбома не отображается на странице. Что я делаю не так?

EDIT

Моя директива нг-приложение в моем файле _Layout.cshtml.

<html data-ng-app="myApp"> 
+0

Где ваша директива нг-приложение? – billb

+0

Я собираюсь обновить текст. –

+0

Если вы просматриваете источник, видите ли вы, что угловые скрипты включены? Поскольку у вас их нет в ваших фрагментах выше, это не ясно. – billb

ответ

0

альбомы - это массив. Проверьте {{альбомы [0] .Name}}.

+0

Опять ничего не печатается. –

+0

Любая ошибка в консоли? – Alborz

+0

nope - нет ошибок –

-1

Использование app.factory вместо app.service

Так

app.factory('albumService', function(){ 

    return albuns; 
}); 
+2

Объясните свой ответ и не подписывайте его с помощью «Спасибо» или чего-то еще. Благодарю. – Stewie

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