我正在使用物料表库:https://material-table.com/#/
我创建了一个可重用的组件,所以我创建了一个带有列和数据的表。我设置了版本和更新。但是,我发现自己必须在BACK中管理用户输入的数据的验证。我想使用像yup这样的验证方案来设置与Forms相同的系统。
这里是代码:
<Table
title="List type tiers"
column={[{ title: 'TYPE TIERS', field: 'libelle' }]}
data={tiersList}
isLoading={isLoading}
editable={{
onRowAdd: newData =>
new Promise(resolve => {
setIsLoading(true);
setTimeout(() => {
addTypeTiers(newData.libelle)
.then(() => {
recuperationListTiers();
})
resolve();
}, 600);
}),
onRowUpdate: (newData) =>
new Promise(resolve => {
setIsLoading(true);
setTimeout(() => {
updateTypeTiers(newData.id, newData.libelle)
.then(() => {
recuperationListTiers();
})
resolve();
}, 600);
}),
}}
pageSize={pageSize}
initialPage={initialPage}
search
paging
headerStyle={{ height: '15px', minHeight: 'unset', fontWeight: 'bold', color: 'white', padding: '5px 40px 5px 16px', backgroundColor: 'grey' }}
/>
您将需要使用自己的逻辑来覆盖EditRow
和/或EditField
组件(只需将它们复制粘贴到您的项目中并进行相应的修补),然后通过material-table
将这些覆盖项提供给components
配置财产。
目前恐怕别无他法。