AngularJS(智能表):如何修改" skipNatural"布尔值而不更改smart-table.js文件

时间:2016-04-08 19:30:10

标签: javascript angularjs smart-table

我想改变" skipNatural" boolean是smart-table.js文件的一部分。但是,由于我在需要时使用Bower更新模块,我确信当我运行更新时,它将覆盖我的布尔变化。以下是它在Smart-Table文件中的外观:

ng.module('smart-table')
  .constant('stConfig', {
    pagination: {
      template: 'template/smart-table/pagination.html',
      itemsByPage: 10,
      displayedPages: 5
    },
    search: {
      delay: 400, // ms
      inputEvent: 'input'
    },
    select: {
      mode: 'single',
      selectedClass: 'st-selected'
    },
    sort: {
      ascentClass: 'st-sort-ascent',
      descentClass: 'st-sort-descent',
      skipNatural: false,
      delay:300
    },
    pipe: {
      delay: 100 //ms
    }
  });

他们可以通过扩展Smart-Table常量或运行Decorator来修改布尔值吗?目前,我正在调用我的smart-table.min.js文件,然后使用ocLazyLoad,我正在调用其他文件。

另外,我在网站上使用了几个表,并希望在一个点上切换布尔值,而不是在几个表头上设置值以减少冗余

谢谢!

1 个答案:

答案 0 :(得分:2)

取自官方文档(位于Sort-data,很容易错过)

  

您可以通过添加st-skip-natural =“true”作为第th个元素的属性来跳过“自然顺序”状态。

所以只需将属性添加到st-sort,就像这样

<th st-sort="birthDate" st-skip-natural="true">birth date</th>

修改

在GitHub上参考此Issue,作者可以全局配置skip-natural,您可以在应用程序的.config部分中覆盖Smart Table的全局属性,这样您就不必触及任何源文件

angular.module('myModule', []).config(function(stConfig) {
  stConfig.sort.skipNatural = true;
});

文档涵盖全局配置部分, 文档还提供了list of defaults