mirror of
https://github.com/router-for-me/Cli-Proxy-API-Management-Center.git
synced 2026-02-18 18:50:49 +08:00
refactor(core): harden API parsing and improve type safety
This commit is contained in:
@@ -13,7 +13,7 @@ interface UseApiOptions<T> {
|
||||
successMessage?: string;
|
||||
}
|
||||
|
||||
export function useApi<T = any, Args extends any[] = any[]>(
|
||||
export function useApi<T = unknown, Args extends unknown[] = unknown[]>(
|
||||
apiFunction: (...args: Args) => Promise<T>,
|
||||
options: UseApiOptions<T> = {}
|
||||
) {
|
||||
@@ -38,8 +38,9 @@ export function useApi<T = any, Args extends any[] = any[]>(
|
||||
|
||||
options.onSuccess?.(result);
|
||||
return result;
|
||||
} catch (err) {
|
||||
const errorObj = err as Error;
|
||||
} catch (err: unknown) {
|
||||
const errorObj =
|
||||
err instanceof Error ? err : new Error(typeof err === 'string' ? err : 'Unknown error');
|
||||
setError(errorObj);
|
||||
|
||||
if (options.showErrorNotification !== false) {
|
||||
|
||||
Reference in New Issue
Block a user