import React from 'react'; import PropTypes from 'prop-types'; export default class ProgressBar extends React.Component { constructor() { super(); this.handleClick = this.handleClick.bind(this); } handleClick(event) { const { duration, setPosition } = this.props; if (setPosition == null) { return; } const offsetX = event.pageX - event.currentTarget.getBoundingClientRect().left; const posX = offsetX / event.currentTarget.offsetWidth; setPosition(posX * duration); } render() { const { position, duration } = this.props; return ( ); } } ProgressBar.propTypes = { setPosition: PropTypes.func, position: PropTypes.number.isRequired, duration: PropTypes.number.isRequired, };