我使用ngTable指令,问题是数据没有在表格中刷新。
加载页面时,gemId未定义,没有数据显示哪个可以。
然后从下拉列表中选择一个值,当按下按钮时,将调用loadItems函数。从服务器检索数据,但不在表中显示。 当我过滤一列时,会显示数据(=第二次请求)。
$scope.tblProject = new ngTableParams(tableParameters, {
counts: [], // hide page counts control
total: $scope.items.length, // value less than count hide pagination
//defaultSort: ['asc','desc'];
getData: function ($defer, params) {
//opgelet: request is geldig ondanks de onbestaand igeID;
var gemId = modelFactory.getGemeente().id;
var igeId = 22222;
if(!angular.isUndefined(gemId)){
Project.query({gemId: gemId, igeId: igeId}, function (projecten) {
var orderedData = params.sorting() ? $filter('orderBy')(projecten, params.orderBy()) : projecten;
$defer.resolve(orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
});
}
},
$scope: { $data: {} } //see example 14
});
$scope.$on('loadItems',function() {
$scope.tblProject.reload();
});
到目前为止尝试了所有可能的解决方法来刷新表,但没有运气。
编辑:我认为在执行' loadItems'
时这是一个范围问题答案 0 :(得分:1)
问题是我使用$ emit而不是$ broadcast执行' loadItems'
从parentController向childController发送一个事件