我有一个过滤器切换按钮,用于切换$ scope.uiGridOptions.enableFiltering。
$scope.toggleFiltering= function () {
$scope.uiGridOptions.enableFiltering = !$scope.uiGridOptions.enableFiltering;
$scope.gridApi.core.notifyDataChange( uiGridConstants.dataChange.COLUMN );
}
{{uiGridOptions.enableFiltering}}更改了true和false,但我的网格中的过滤器不会隐藏/显示。
$scope.uiGridOptions = {
enableFiltering:true,//default
onRegisterApi: function (gridApi) {
$scope.gridApi = gridApi;
},
columnDefs: [
{
field: 'name'
, name: 'Name'
}]
}
在控制台中,出现以下错误信息。
Notified of a data change, but the type was not recognised, so no action taken, type was: undefined
(anonymous function)
d.service.q.logError
o.notifyDataChange
d.service.q.createBoundedWrapper
$scope.toggleFiltering
ib.functionCall
Dc.(anonymous function).compile.d.on.f
$get.l.$eval
$get.l.$apply
(anonymous function)
jQuery.event.dispatch
jQuery.event.add.elemData.handle
我希望有人可以帮助我。
答案 0 :(得分:3)
这件事发生在我身上,因为我正在使用最新的官员' 3.0.0-rc.20
。尝试使用来自github的不稳定版本的ui-grid。这解决了我的问题。此外,我使用的是Angular的版本1.2.28
。
答案 1 :(得分:0)
确保在控制器/指令中注入 uiGridConstants
app.controller('MainCtrl', ['$scope', '$http', 'uiGridConstants', function ($scope, $http, uiGridConstants) { ... }