材料设计数据表中不显示默认列(iamisti/mdDataTable)

jho*_*ano 10 javascript angularjs angular-datatables

我试图用控制器中的数组动态填充<mdt-column>内部<mdt-header-row>.这段代码似乎不能正常工作:

hide-column-by-default="c.selector_hidden"

加载表时,不显示默认列.某些列设置为默认值,并从"列选择器"中排除,因此即使选择了选择器中的所有列,也不会显示这些列.

当我...columnSelector: false}...在表卡中设置它时会显示我的列,但是选择列的功能已经消失了!?

我怎样才能解决这个问题?

这是mdt-header-row:

<mdt-header-row>
<mdt-column 
hide-column-by-default="c.selector_hidden" 
exclude-from-column-selector="c.selector_exclude" 
column-sort="c.sort" 
sortable-rows-default="c.sort_default" 
column-key="{{c.key}}"  
align-rule="{{c.align}}" 
column-definition="{{c.definition}}" 
ng-repeat="c in tableHeader"><span>{{c.name}}</span></mdt-column>

</mdt-header-row>
Run Code Online (Sandbox Code Playgroud)

数据来自控制器中的此数组:

$scope.tableHeader = [
        {
            name: 'Dessert (100g serving)',
            definition: '',
            align: 'left',
            sort: true,
            sort_default:false,
            hidden: false,
            selector_exclude:false,
            selector_hidden:false
        },...
Run Code Online (Sandbox Code Playgroud)

我也为它创建了一个分支:https: //codepen.io/anon/pen/JJQyKN?editors = 1111

jho*_*ano 1

实际上问题在于该指令本身。我必须修改 md-data-table.js 文件并将“isVisible”引用列更改为 true。我还将 isHidden 属性更改为“isVisable”,因为这是 md-data-table-templates.js 文件引用的内容。我进一步修改了代码以满足我们的要求,因此无法提供特定的补丁。然而,不幸的是这个项目似乎被开发商放弃了。