javascript - 在不丢失状态的情况下反应本机 Teleport 组件
问题描述
我将 React Native 0.62 与react-native-video一起使用。
我需要添加一个带全屏选项的视频播放器。要求特别需要在普通视图和全屏中自定义控件。IOS 中的本机全屏不允许自定义控件,因此我通过在模态中显示全屏视频开发了一个内部解决方案。问题从这里开始...
在模态框内将组件从普通视图移动到全屏时,它会丢失其所有内部引用和状态。我能够通过将那些放在播放器之外来恢复大部分内容(例如进度和播放/暂停状态)。但是,我仍然丢失了所有视频缓存和缓冲,并且视频再次重新加载。
谁能建议我可以在不丢失其内部状态的情况下在 DOM 中移动组件的方法?
到目前为止我尝试过的事情:
- 为组件提供密钥
- UseContext 在父级中渲染播放器,并使用 wrapperComponent 在其周围设置模态。
- 查看门户,但找不到任何可能的解决方案来解决此问题。
解决方案
推荐阅读
- performance-testing - 为性能测量打开编译器优化是否有意义?
- java - selenium POM框架的testNG中添加多个类时出现空指针异常
- scala - 将两个 BigInt 值相除并将结果转换为 Scala 中的 Float
- python - 尝试做一个文本文件查看器
- .net - 无法在 lambda 中部署简单的 hello-world:自包含包的问题
- html - 如何在图标上放置通知徽章?
- reactjs - 如何在 reactjs 组件中渲染 pdf/doc/img
- spring - Spring Reactive:服务方法调用无法返回响应
- javascript - 如何在 react-native-reanimated 中聆听价值变化?
- omnet++ - 相扑模拟器,静脉