diff --git a/front/components/Metronome.tsx b/front/components/Metronome.tsx index dd869cc..570a5b5 100644 --- a/front/components/Metronome.tsx +++ b/front/components/Metronome.tsx @@ -1,8 +1,21 @@ /* eslint-disable @typescript-eslint/no-var-requires */ -import { useEffect, useRef } from 'react'; +import { useEffect, useRef, useState } from 'react'; import { Slider, Switch, Text, View } from 'native-base'; import { Audio } from 'expo-av'; +const MetronomeToggle = (props: { enabled: boolean, onToggle: (stateAfterToggle: boolean) => void }) => { + const [isEnabled, setEnabled] = useState(false); + + useEffect(() => { + setEnabled(props.enabled) + }, [props.enabled]) + return { + console.log(isEnabled); + props.onToggle(!isEnabled); + setEnabled(!isEnabled); + }} /> +} + export const Metronome = ({ paused = false, bpm }: { paused?: boolean; bpm: number }) => { const audio = useRef(null); const enabled = useRef(false); @@ -37,7 +50,7 @@ export const Metronome = ({ paused = false, bpm }: { paused?: boolean; bpm: numb Metronome Settings Enabled: - (enabled.current = !enabled.current)} /> + (enabled.current = e)} /> Volume: