fix: another dependency array

This commit is contained in:
Felix Roos 2023-01-14 10:58:30 +01:00
parent 88684d6d9e
commit 2732d64beb
4 changed files with 217 additions and 209 deletions

View file

@ -15,6 +15,11 @@ const getTime = () => getAudioContext().currentTime;
export function MiniRepl({ tune, hideOutsideView = false, enableKeyboard, drawTime, punchcard, canvasHeight = 200 }) {
drawTime = drawTime || (punchcard ? [0, 4] : undefined);
const evalOnMount = !!drawTime;
const drawContext = useCallback(
!!drawTime ? (canvasId) => document.querySelector('#' + canvasId)?.getContext('2d') : null,
[drawTime],
);
const {
code,
setCode,
@ -35,8 +40,8 @@ export function MiniRepl({ tune, hideOutsideView = false, enableKeyboard, drawTi
defaultOutput: webaudioOutput,
editPattern: (pat) => (punchcard ? pat.punchcard() : pat),
getTime,
evalOnMount: !!drawTime,
drawContext: !!drawTime ? (canvasId) => document.querySelector('#' + canvasId)?.getContext('2d') : null,
evalOnMount,
drawContext,
drawTime,
});

View file

@ -100,7 +100,7 @@ function useStrudel({
onDraw(pat, -0.001, haps, drawTime);
}
},
[drawTime, onDraw],
[drawContext, drawTime, onDraw],
);
const inited = useRef();