【问题标题】:Using ui-grid constants to disable scrollbars使用 ui-grid 常量禁用滚动条
【发布时间】:2015-01-12 07:17:45
【问题描述】:

使用最新版本的 ui-grid (v3.0.0-rc.16) 可以分别关闭水平和垂直滚动条。 我通过交换得到了这个工作

$scope.gridOptions.enableScrollbars = false;

$scope.gridOptions.enableHorizontalScrollbar = 0;
$scope.gridOptions.enableVerticalScrollbar = 0;

在ui-grid的源码中,为滚动条定义了三个常量:

scrollbars: {
  NEVER: 0,
  ALWAYS: 1,
  WHEN_NEEDED: 2
}

面对 ui-grid 仍然不稳定且经常更改的事实,我会觉得使用这些常量而不是特定值会更舒服。但是我怎样才能访问它们呢?

Plunker:http://plnkr.co/edit/h0ewAZK616rKCH3T62te

【问题讨论】:

    标签: angularjs scrollbar angular-ui-grid


    【解决方案1】:

    在 github 上得到了我的答案:

    我需要做的就是像这样将 uiGridConstants 传递给我的控制器:

    angular.module('myApp').controller('myCtrl',function($scope,uiGridConstants) {
        ...
    
        $scope.gridOptions.enableHorizontalScrollbar = uiGridConstants.scrollbars.NEVER;
    
        ...
    })
    

    【讨论】:

    • 在哪里可以找到uiGridConstants 的所有可用选项?
    • 我控制台记录了它:它只是平均、计数、最大值、最小值和总和吗?我觉得 stddev 应该在那里
    • 获取有关 ui-grid 所需信息的最可靠方法是阅读源代码并在 git hub 上询问开发人员。 :)
    【解决方案2】:

    具有约翰爸爸风格:

    ExampleController.$inject = ['$scope', 'uiGridConstants'];
    function ExampleController($scope, uiGridConstants) {
        var vm = this;
    
        vm.gridOptions = {
            enableHorizontalScrollbar : uiGridConstants.scrollbars.NEVER,
            enableVerticalScrollbar   : uiGridConstants.scrollbars.NEVER
        };
    }
    

    【讨论】:

      【解决方案3】:

      解决方法(因为 WHEN_NEEDED 当前已禁用)是在您的 gridOptions 上设置 enableHorizontalScrollbar: 0,然后在您的样式表中设置以下内容:

      .ui-grid .ui-grid-render-container-body .ui-grid-viewport {
        overflow-x: auto !important;
      }
      

      现在水平滚动条只在需要时显示。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-04-04
        • 2013-02-13
        • 1970-01-01
        • 2012-06-02
        • 2017-07-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多