需要转换获取的对象,(例如 {..., "key": {"keyName": "keyValue"}})需要转换 {..., [{"name": "keyName ", "值": "keyValue"}]}
const { field }: any = useController({ name: 'headers', rules: { required: 'The field is required' } });
useEffect(() => {
const newValue: { headerName: string; headerValue: any; }[] = []
Object.keys(field.value).forEach(el => {
newValue.push({ 'headerName': el, 'headerValue': field.value[el] });
});
// NOT UPDATING
field.onChange(newValue)
}, []);
withLifecycleCallbacks
助手就是为此而设计的。此函数允许您向特定资源的现有 dataProvider
添加逻辑,例如使用 pre-
和 post-
事件处理程序,例如 afterGetOne
。
例如:
const baseDataProvider = myDataProvider('http://path.to.my.api/');
export const dataProvider = withLifecycleCallbacks(baseDataProvider, [
{
resource: 'posts',
afterGetOne: async (result, dataProvider) => {
return transform(result); // transform the result and return it
},
},
]);
希望这有帮助:)