【发布时间】:2018-10-22 15:58:27
【问题描述】:
我正在为 AngularJS 使用 ngTable 并从 Web api 获取数据。当我尝试使用表格中的过滤器时,问题就开始了。
如果我这样做,表格会充满数据,但过滤器不起作用:
$scope.clientesTable = new NgTableParams({
page: 1,
count: 10
}, {
getData: function (params) {
var clientes = clientesService.getAll(baseUrl);
clientes.then(function (data) {
$scope.clientesTableData = data.data;
}, function (error) {
console.log("Error: " + error);
});
}
});
在文档中的代码是这样的:
$scope.clientesTable = new NgTableParams({
page: 1,
count: 10
}, {
getData: function (params) {
var clientes = clientesService.getAll(baseUrl);
clientes.then(function (data) {
params.total(data.inlineCount);
return data.results;
}, function (error) {
console.log("Error: " + error);
});
}
});
这样做,我在前端看不到数据。如果在clientesTable中查找数据:
【问题讨论】:
-
能不能在clientes.then(function (data) { ...后面加一个console.log
-
@Gerfried 显示数据?
-
是的,您是否从您的服务中收到任何数据。结构是data.data吗?
-
是的,数据没问题。如果我将 data.data 分配给 $scope 中的 var,那么我可以在前端看到它。问题是当我像在文档中一样使用 return data.data 时。
-
@GuidoCaffa 可能你得在clientes.then()之前写一个return语句