Quiero ejecutar una función antes de que se abra la fila de agregar editable.
Antes de que se abra esta interfaz de usuario, quiero ejecutar una función. (como console.log('Hello') ) Este es mi código de tabla de materiales actual.
<MaterialTable title="Timesheet" columns={columns} data={DataArray} icons={tableIcons} editable={{ onRowAddCancelled: rowData => console.log('Row adding cancelled'), onRowUpdateCancelled: rowData => console.log('Row editing cancelled'), onRowAdd: newData => new Promise((resolve, reject) => { setTimeout(() => { // add row }, 1000); }), }} options={{ actionsColumnIndex: -1, addRowPosition: "first", search:false, exportButton: true, }} />Puede poner el código que desea ejecutar en la función de devolución de llamada onRowAdd, por ejemplo
<MaterialTable title="Timesheet" columns={columns} data={DataArray} icons={tableIcons} editable={{ onRowAddCancelled: rowData => console.log('Row adding cancelled'), onRowUpdateCancelled: rowData => console.log('Row editing cancelled'), onRowAdd: newData => { console.log('Hello'); return new Promise((resolve, reject) => { setTimeout(() => { // add row }, 1000); }); } }} options={{ actionsColumnIndex: -1, addRowPosition: "first", search:false, exportButton: true, }} /> );Si desea llamar a su función al hacer clic en el botón +, debe agregar las acciones . Por ejemplo
<MaterialTable actions={[ { icon: 'add', tooltip: 'Add User', isFreeAction: true, onClick: (event) => alert("You want to add a new row") } ]} />