나는 angularjs를 처음 사용합니다. 나는 몇몇 json 데이터로 anglejs datatable을 구현하고있다. 사용자가 권한 (json에 저장되어있는 권한)을 가졌을 때마다 csv를 내보낼 수 있지만 사용자에게 권한이 없으면 datatable 내보내기 단추가 숨겨 지거나 표시되지 않는 문제가 있습니다. 나는 몇몇 기사를 googled 그러나 대답을 찾아 낼 수 없습니다. 당신의 소중한 시간을Datatable with 버튼은 angularjs 코드에서 숨기고 표시합니다.
<table datatable="" dt-options="vm.dtOptions" dt-columns="vm.dtColumns" dt-instance="vm.dtInstance"
class="row-border hover">
</table>
감사합니다 - :
vm.dtOptions = DTOptionsBuilder.fromSource('')
.withFnServerData(serverData)
.withOption('createdRow', createdRow)
.withDataProp('data')
.withOption('order', [0, 'desc'])
.withOption('processing', true)
.withOption('serverSide', true)
.withOption('headerCallback', function(header) {
if (!vm.headerCompiled) {
// Use this headerCompiled field to only compile header once
vm.headerCompiled = true;
$compile(angular.element(header).contents())($scope);
}
})
.withPaginationType('full_numbers')
.withOption('lengthMenu', [
[10, 50, 100, 200, 500, -1],
[10, 50, 100, 200, 500, "All"]
])
.withButtons([
{
className:'fa fa-upload',
key: '1',
action: function (e, dt, node, config) {
vm.openImportFileDialog();
}
},
{
action:function() {
if (!vm.permissions.assets_EDIT) {
alert('You have no permission to download file.')
}
},
extend: "csv",
text:' Export(CSV)',
className:'fa fa-download',
exportOptions: {
columns:[0,1,2,3,4,5,6]
},
exportData: {decodeEntities:true}
},
{
className:'fa fa-exchange p-left-5',
text:' Export(HTML)',
// enabled: false,
action:function() {
vm.openNewTab();
}
}
])
.withBootstrap();
가 여기 내 HTML 콘텐츠입니다 :
나는 데이터 테이블 버튼을 구현하는 코드 아래 사용.
HTML을 붙여 넣으시겠습니까? –
@AnkitPandey, 답변을 주셔서 감사합니다. 질문을 업데이트했습니다. –
"하지만 사용자에게 권한이없는 경우 데이터 테이블 내보내기 단추가 숨겨져 있거나"내가 게시 한 코드 샘플에서이 논리를 볼 수 없으므로 내가 도와 드릴 수 없습니다. "라고 표시되지 않습니다. S – nocarrier