We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 1b61175 commit d40b783Copy full SHA for d40b783
index.d.ts
@@ -1,5 +1,3 @@
1
declare module 'use-async-effect' {
2
- import { InputIdentityList } from 'react';
3
-
4
- export function useAsyncEffect(effect: () => Promise<void>, destroy?: () => void, inputs?: InputIdentityList): void;
+ export function useAsyncEffect<V>(effect: () => Promise<V>, destroy?: (result?: V) => void, inputs?: any[]): void;
5
}
index.js
@@ -2,8 +2,9 @@ const { useEffect } = require('react');
module.exports.useAsyncEffect = (effect, destroy, inputs) => {
useEffect(() => {
- effect();
+ let result;
6
+ effect().then((value) => result = value);
7
- return destroy;
8
+ return () => destroy(result);
9
}, inputs);
10
};
0 commit comments