$ scope变量vs var

时间:2014-09-20 08:56:35

标签: angularjs ngtable

在ngTable文档中,示例1(http://bazalt-cms.com/ng-table/example/1

这一行:

<tr ng-repeat="user in $data">
    <td data-title="'Name'">{{user.name}}</td>
    <td data-title="'Age'">{{user.age}}</td>
</tr>

在js文件中,他有

var data = [{name: "Moroni", age: 50},
            {name: "Tiancum", age: 43},
....
];

$ data有什么具体作用?我通常会做

$scope.data = [...];

然后

<tr ng-repeat="user in data">

有趣的是,当我创建第二个时,它不起作用。 e.g。

var data2 = [...];

和HTML

{{$data2.length}}

这不会打印任何内容。有人可以为我澄清一下吗?谢谢!

1 个答案:

答案 0 :(得分:0)

在此示例中,data确实只是本地的,不能直接使用。该示例有效,因为在data变量的getData函数中使用了$scope.tableParams(代码行21):

$scope.tableParams = new ngTableParams({
    page: 1,            // show first page
    count: 10           // count per page
}, {
    total: data.length, // length of data
    getData: function($defer, params) {
        $defer.resolve(data.slice((params.page() - 1) * params.count(), params.page() * params.count()));
  // note the variable ^^^^
    }
});

有关此配置的更多信息,请参阅the documentation