react-native-filament
Version:
A real-time physically based 3D rendering engine for React Native
20 lines • 659 B
JavaScript
import { useEffect, useState } from 'react';
import { useFilamentContext } from './useFilamentContext';
import { wrapWithErrorHandler } from '../ErrorUtils';
export function useWorkletMemo(workletFunction, dependencies) {
const {
workletContext
} = useFilamentContext();
const [value, setValue] = useState(undefined);
useEffect(() => {
async function loadAsync() {
const result = await workletContext.runAsync(wrapWithErrorHandler(workletFunction));
setValue(result);
}
loadAsync();
},
// eslint-disable-next-line react-hooks/exhaustive-deps
dependencies);
return value;
}
//# sourceMappingURL=useWorkletMemo.js.map