javascript - NG-repeat 不渲染内容

标签 javascript angularjs hogan.js

我正在编写一个 Web 应用程序,使用 Node.js+Express 提供服务(使用 HoganJs 作为模板引擎),并在前端使用 AngularJS。我在 ng-repeat 渲染正确数量的元素时遇到问题,但没有任何内容。我将 ng-repeat 分解成一个较小的示例,但它仍然没有渲染。

编辑: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>

结果 Controller :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,但其中没有模板化内容。

最佳答案

在此处删除 ):

      ];
   });
    ^

地址:http://plnkr.co/edit/e0URFt?p=preview

关于javascript - NG-repeat 不渲染内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18714492/

相关文章:

javascript - Google 不是使用 Google Visualization API 定义的;可能是 jQuery 的错

Jquery UI 选项卡在 AngularJS 中不起作用

javascript - 如何重置 typeahead.js 中使用的 Hogan.js 模板

javascript - < 标签有什么用?

javascript - 如何为 Hogan.js 配置国际化?

java - 如何将 Java ArrayList 传递给 jQuery 函数?

javascript - 警告 : Failed prop type: The prop open is marked as required in Snackbar, 但其值未定义

javascript - Angular 'undefined is not a function' 定义组件

javascript - 如果没有用户交互,AngularJS 目录不会更新

javascript - 从 html 代码(在另一个组件上)以 Angular 2 制作 pdf