【发布时间】:2019-12-05 22:44:35
【问题描述】:
我正在使用 ReactJS:是否可以通过用户输入以编程方式更改方向?就我而言,当用户在我的自定义视频播放器上按下全屏时,如果他们是纵向的,我希望它自动更改为横向。
我正在使用window.orientation 检测方向,但我找不到任何设置方法。如果它可以帮助任何人,我可以提供一个小提琴,但我认为解决方案非常简单:有没有办法在 ReactJS 中以编程方式更改设置方向?
【问题讨论】:
-
React 不是另一种语言。是JS。如果找不到合适的 JS 解决方案,它就不存在。您实际上无法设置整个屏幕的方向。您可以检测方向变化并相应地更改布局。
-
是的,我知道,找不到合适的 JS 解决方案,但如果可能的话,我说 React,因为在可能的情况下避免混乱的 JavaScript 解决方案很好。无论如何,我正在倾听方向的变化,但是要让每个组件“认为”它是横向的,需要做太多的工作。即,如果我给它
width:100vw,如果它是纵向与横向,那意味着不同的东西。手动更改布局会很麻烦 -
我猜stackoverflow.com/a/18914945/3731501 是你能想到的最好的东西。
-
是的,我在发布之前就发现了,但那已经超过 5 年了,所以我希望有所改变
-
澄清一下:我们可能认为手机是 300px 宽 x 500px 高,但视图单元(vw 和 vh)会响应方向(300 x 500 或 500 x 300)。规划这两个和其他解决方案需要响应式设计。
标签: javascript reactjs orientation fullscreen