Reputation: 216
I want to hide the approved/disapproved
button if the data.STATUS
is equal to APPROVED
in MaterialTable
.
const [data, setData] = useState([
{ID: 1, STATUS: "APPROVED"},
{ID: 2, STATUS: "FOR APPROVAL"},
{ID: 3, STATUS: "REJECTED"},
]);
<MaterialTable
icons={tableIcons}
columns={columns}
data={data}
title="List of Advisory"
style={{
overflowX: 'auto'
}}
actions={[
{
icon: tableIcons.Edit,
tooltip: 'Edit Advisory',
onClick: (event, rowData) => selectedAdvisory(rowData, 'Edit')
},
{
icon: tableIcons.Delete,
tooltip: 'Delete Advisory',
onClick: (event, rowData) => selectedAdvisory(rowData, 'Delete')
},
{
icon: tableIcons.ThumbsUpDownIcon,
tooltip: 'Approved/Disapproved Advisory',
onClick: (event, rowData) => selectedAdvisory(rowData, 'ApproveDisapprove')
},
{
icon: tableIcons.PageviewIcon,
tooltip: 'Preview',
onClick: (event, rowData) => alert('You are about to view' + rowData.ADVISORYID)
}
]}
localization={{
header:{actions:'Actions'}
}}
/>
I want to hide the Approved/Disapproved
icon on action column if the STATUS
is APPROVED
.
Thank you in advance
Material UI: https://material-ui.com/components/tables/ Material table: https://www.npmjs.com/package/material-table https://material-table.com/#/docs/get-started
Upvotes: 1
Views: 298
Reputation: 102
Add/Put the action icons/buttons in columns property.
{ title: 'Actions', sorting: false, render: rowData =>
<Link to={`#`}
onClick={dosomething}
style={{display: rowData.state==='approved' ? 'none' : 'block'}}
onClick={dosomething}
<Approveicon>
</Link> }
so the actions per column can be controlled
Upvotes: 1