감속기 자체에서 작업을 전달할 수 있습니까? 진행률 표시 줄과 오디오 요소가 있습니다. 오디오 요소에서 시간이 업데이트 될 때 진행률 표시 줄을 업데이트하는 것이 목표입니다. 그러나 진행률 표시 줄을 업데이트하기 위해 ontimeupdate 이벤트 핸들러를 배치 할 위치 또는 ontimeupdate 콜백에서 작업을 디스패치하는 방법을 모르겠습니다. 내 코드는 다음과 같습니다.
//reducer
const initialState = {
audioElement: new AudioElement('test.mp3'),
progress: 0.0
}
initialState.audioElement.audio.ontimeupdate = () => {
console.log('progress', initialState.audioElement.currentTime/initialState.audioElement.duration);
//how to dispatch 'SET_PROGRESS_VALUE' now?
};
const audio = (state=initialState, action) => {
switch(action.type){
case 'SET_PROGRESS_VALUE':
return Object.assign({}, state, {progress: action.progress});
default: return state;
}
}
export default audio;
AudioElement
? 그것은 상태가 아닌 것 같습니다.