feat: resource setItem

This commit is contained in:
chenos 2025-06-30 22:11:15 +08:00
parent 090ee6df4c
commit bb3d9a78ec
2 changed files with 9 additions and 5 deletions

View File

@ -170,13 +170,10 @@ export class TableModel extends DataBlockModel<TableModelStructure> {
fieldPath: dataIndex,
filterByTk: record.id,
onSuccess: (values) => {
const oldData = this.resource.getData();
const newData = oldData.slice(); // 浅拷贝
newData[recordIndex] = {
this.resource.setItem(recordIndex, {
...record,
...values,
};
this.resource.setData(newData);
});
},
});
// await this.resource.refresh();

View File

@ -139,6 +139,13 @@ export class MultiRecordResource<TDataItem = any> extends BaseRecordResource<TDa
await this.refresh();
}
setItem(index: number, newDataItem: TDataItem) {
const oldData = this.getData();
const newData = oldData.slice(); // 浅拷贝
newData[index] = { ...newDataItem };
this.setData(newData);
}
async refresh(): Promise<void> {
const { data, meta } = await this.runAction<TDataItem[], any>('list', {
method: 'get',