⚡ A blazing fast YouTube embed component that supports lazy loading.
- React 16.8.0 or later
npm install --save react-youtube-lazyload (or) yarn add react-youtube-lazyload
- videoId (Required): (string) The YouTube video ID.
- width (Optional): (number) Change the width of the player.
- height (Optional): (number) Change the height of the player.
- privacy (Optional): (boolean) Privacy Enhanced Mode
- playing (Optional): (boolean) Control the play/pause state of the video.
- className (Optional): (string) Additional CSS classname to apply to the YouTube component (Out of the box tailwindcss support).
- onPlayChange (Optional): (function) Callback function to be called when the play state changes. It receives a boolean argument indicating whether the video is playing or not.
import React from 'react' import { YouTube } from 'react-youtube-lazyload' import 'react-youtube-lazyload/dist/index.css' const App = () => { const [playing, setPlaying] = React.useState(false) return ( <YouTube videoId='dQw4w9WgXcQ' privacy={true} // Privacy Enhanced Mode (optional) - default: false onPlayChange={(e) => setPlaying(e)} playing={playing} className='w-full h-96' /> <button onClick={() => setPlaying(!playing)}>Play/Pause</button> ) } export default App
I hope you find this project useful. If you have any questions, please create an issue.
MIT © mcnaveen