2013-09-10 4 views
2

Я пишу веб-приложение, используя Node.js + Express для обслуживания (с HoganJs в качестве механизма шаблонов) и AngularJS на интерфейсе. У меня возникают проблемы с рендерингом ng-repeat правильного количества элементов, но без какого-либо контента. Я сломал ng-repeat на меньший пример, и это все еще не рендеринг.Ng-repeat not rendering content

EDIT: В Plunkr была опечатка, поэтому я удалил ее. Вот расширенный экстракт из моего приложения.

Вот часть моего зрения: index.hjs

<div class="search-results" ng-controller="results"> 
    <ul class="tracks"> 
     <li class="track" ng-repeat="track in tracks"> 
       <ul class="meta"> 
        <li> 
         <div class="name"> 
          <span class="value">{{track.name}}</span> 
         </div> 
        </li> 
        <li> 
         <div class="album">Album: 
          <span class="value">{{track.album}}</span> 
         </div> 
        </li> 
        <li> 
         <div class="artist">Artist: 
          <span class="value">{{track.artist}}</span> 
         </div> 
        </li> 
        <li> 
         <div class="length">Length: 
          <span class="value">{{track.length}}</span> 
         </div> 
        </li> 
       </ul> 
      </li> 
     </ul> 
    </div> 

Контроллер Результаты: js/controllers/results.js

var results = function($scope, socket) { 
    $scope.tracks = [ 
     {"uri":"spotify:track:1jdNcAD8Ir58RlsdGjJJdx","name":"Ho Hey","artist":"The Lumineers","album":"The Lumineers"}, 
     {"uri":"spotify:track:3uuGbRzMsDI5RiKWKOjqWL","name":"Hey Porsche","artist":"Nelly","album":"Hey Porsche"}, 
     {"uri":"spotify:track:5BSndweF91KDqyxANsZcQH","name":"Ho Hey","artist":"The Lumineers","album":"The Lumineers"}, 
     {"uri":"spotify:track:2UNc0duOP4cS7gqYFFkwxT","name":"Hey Girl","artist":"Billy Currington","album":"Hey Girl"}, 
     {"uri":"spotify:track:6fgbQt13JlpN59PytgTMsA","name":"Snow [Hey Oh]","artist":"Red Hot Chili Peppers","album":"Snow [Hey Oh]"} 
    ]; 

    socket.on("results", function(tracks) { 
     $scope.tracks = tracks; 
     console.dir(JSON.stringify($scope.tracks)); 
    }); 

    $scope.add = function(uri) { 
     socket.emit("add", uri); 
    }; 
}; 

И, наконец, мой модуль: app.js

var app = angular.module("app", []); 

var factories = { 
    socket: socket 
}; 
app.factory(factories); 

var controllers = { 
    actions: actions, 
    search: search, 
    results: results, 
    queue: queue 
}; 
app.controller(controllers); 

Для целей тестирования, треки жестко запрограммированы при запуске приложения 5 li s, но там внутри не было шаблонов.

+0

Plunk не найден. Вы можете проверить свою ссылку? – Scalpweb

+0

@Scalpweb Извините, обновлено. –

+0

ОК и где сейчас плункер? – Cherniv

ответ

1

Я только что понял, что здесь происходит. Hogan.js перезаписывает угловые шаблоны, когда страница отображается на сервере.