fix(plugin-file-manager): fix calling rule hook on read-pretty fields (#5447)

This commit is contained in:
Junyi 2024-10-17 18:30:09 +08:00 committed by GitHub
parent 9f6b162782
commit c8741e7656
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -7,16 +7,25 @@
* For more information, please refer to: https://www.nocobase.com/agreement. * For more information, please refer to: https://www.nocobase.com/agreement.
*/ */
import { useCollectionField, useCollectionManager, useRequest } from '@nocobase/client'; import { useField } from '@formily/react';
import { useAPIClient, useCollectionField, useCollectionManager, useRequest } from '@nocobase/client';
export function useStorageRules(storage) { export function useStorageRules(storage) {
const name = storage ?? ''; const name = storage ?? '';
const apiClient = useAPIClient();
const field = useField<any>();
const { loading, data } = useRequest<any>( const { loading, data } = useRequest<any>(
{ async () => {
if (field.pattern !== 'editable') {
return null;
}
return apiClient.request({
url: `storages:getRules/${name}`, url: `storages:getRules/${name}`,
});
}, },
{ {
refreshDeps: [name], refreshDeps: [name],
cacheKey: name,
}, },
); );
return (!loading && data?.data) || null; return (!loading && data?.data) || null;