2

无法调整 React-Player 视频的大小。我将宽度更改为任意数字,视频保持不变。我正在尝试针对计算机视图对其进行优化,然后添加断点以调整手机等较小屏幕的大小。

Bellow 是我在其中渲染 React-Player 视频的文件,我在其中应用了我希望我的 react-player 视频采用的所需高度和宽度。

import React, { useContext, useEffect, useState } from 'react'
import { makeStyles } from '@material-ui/core/styles'
import Modal from '@material-ui/core/Modal'
import { MovieContext } from './MovieContext'
import ReactPlayer from 'react-player'
import { getTrailer } from '../utils/movieDB'
// potential of adding controls
// import { Slider, Direction } from 'react-player-controls'
//slider to be implemented
//https://www.npmjs.com/package/react-player-controls#playericon-

const useStyles = makeStyles((theme) => ({
  video: {
    width: 'auto',
    height: 'auto',
    top: '25%',
    right: '25%',
    position: 'fixed',
    [theme.breakpoints.down('xs')]: {},
  },
}))

const styles = {
  player: {
    width: '300px',
  },
}

export default function SimpleModal({ open }) {
  const classes = useStyles(),
    //receives movie from Home > DisplayCard > MovieContext
    { setOpenTrailer, movie, setMovie } = useContext(MovieContext),
    [trailer, setTrailer] = useState(),
    [key, setKey] = useState(),
    [modalStyle] = useState()

  useEffect(() => {
    if (movie) {
      getTrailer(movie).then((data) => {
        setKey(data.videos.results[0].key)
        setTrailer(data)
      })
    }
  }, [movie])

  const handleOpen = () => {
    setOpenTrailer(true)
  }

  const handleClose = () => {
    setOpenTrailer(false)
    setMovie(undefined)
    setTrailer(undefined)
    setKey(undefined)
  }

  const renderVideo = (
    <>
      {key && (
        <div className={classes.video}>
          <ReactPlayer style={styles.player} url={`https://www.youtube.com/watch?v=${key}`} />
        </div>
      )}
    </>
  )

  return (
    <div>
      <Modal
        open={open || false}
        onClose={handleClose}
        aria-labelledby="simple-modal-title"
        aria-describedby="simple-modal-description"
      >
        {renderVideo}
      </Modal>
    </div>
  )
}

在 react-player 对象上设置尺寸的正确方法是什么?

4

1 回答 1

0

像这样使用 width 和 height 道具:

<ReactPlayer
 width={“300px”}
 url={`https://www.youtube.com/watch?v=${key}`} />
于 2020-11-20T22:59:44.767 回答