forked from ddrilling/asb_cloud_front
Добавлена возможность указывать для invokeWebApiWrapperAsync в качестве текста ошибки метод, принимающий самую ошибку и возвращающий текст
This commit is contained in:
parent
8a848b56c5
commit
f389097439
@ -31,7 +31,11 @@ export const notify = (body: string|any, notifyType:string ='info', other?: any)
|
||||
|
||||
type asyncFunction = (...args:any) => Promise<any|void>;
|
||||
|
||||
export const invokeWebApiWrapperAsync = async (funcAsync: asyncFunction, setShowLoader: Dispatch<SetStateAction<boolean>>, errorNotifyText: string) => {
|
||||
export const invokeWebApiWrapperAsync = async (
|
||||
funcAsync: asyncFunction,
|
||||
setShowLoader: Dispatch<SetStateAction<boolean>>,
|
||||
errorNotifyText: (string | ((ex: unknown) => string))
|
||||
) => {
|
||||
if(setShowLoader)
|
||||
setShowLoader(true)
|
||||
try{
|
||||
@ -39,8 +43,11 @@ export const invokeWebApiWrapperAsync = async (funcAsync: asyncFunction, setShow
|
||||
} catch (ex) {
|
||||
if(process.env.NODE_ENV === 'development')
|
||||
console.error(ex)
|
||||
if(errorNotifyText)
|
||||
notify(errorNotifyText, 'error')
|
||||
if(errorNotifyText) {
|
||||
if (typeof errorNotifyText === 'function')
|
||||
notify(errorNotifyText(ex), 'error')
|
||||
else notify(errorNotifyText, 'error')
|
||||
}
|
||||
} finally{
|
||||
if(setShowLoader)
|
||||
setShowLoader(false)
|
||||
|
Loading…
Reference in New Issue
Block a user