无法绑定AngularJS中的工厂数据

时间:2014-10-07 07:26:39

标签: angularjs

我不知道我做错了什么...... 在这里申请

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

工厂

traccApp.factory('TraccData', ['$resource',
    function($resource) {
        return $resource('app/data/tracks/:id', {id: '@id'});
    }]);

控制器

traccApp.controller('newsFeedController', ['$scope', 'TraccData',

    function($scope, TraccData) {

        $scope.tracks = TraccData;
  }]);

查看此处

<div ng-controller="newsFeedController">
 <p><strong>Artist:</strong> {{tracks.artist}}</p>
 </div>

json对象

  {
      "id": 1,
      "artist":"Lorum Ipsum",
      "title":"test tes ",
      "genre":"lorum ipsum genre",
      "cover":"file"
}

在我看来,没有任何东西出现?似乎没有任何东西被绑定,我也没有错误..

2 个答案:

答案 0 :(得分:0)

您没有指定模型:

<div ng-controller="newsFeedController" ng-model="tracks">
    <p><strong>Artist:</strong> {{tracks.artist}}</p>
 </div>

但请注意,在模型中使用点是个好习惯。

答案 1 :(得分:0)

看起来你只是在没有执行任何请求的情况下获取资源对象:

$scope.anArtist = ''
$scope.tracks = TraccData.query(function() {
  $scope.anArtist = $scope.tracks[0];
});

在你的标记中:

<p><strong>Artist:</strong> {{anArtist.artist}}</p>