实例化react-native-video使应用程序崩溃

时间:2018-07-24 20:39:53

标签: reactjs react-native react-native-video

当前行为

当我尝试调用视频库(从“ react-native-video”导入{Video})时,我的应用程序因错误Module AppRegistry is not a registered callable module (calling runApplication)而中断

复制步骤

我的视频组件如下:

import React, { Component } from 'react';
import { Video } from 'react-native-video';
import {
  View,
  Dimensions,
  TouchableOpacity,
  TouchableWithoutFeedback,
  Animated,
  Text,
  Slider,
  NetInfo,
  StyleSheet
} from 'react-native';

class VideoPlayer extends Component {
  state = {
    paused: true
  };

  render() {
    const videoWidth = Dimensions.get('window').width;
    const videoHeight = videoWidth * (9 / 16);

    const styles = StyleSheet.create({
      videoContainer: {
        width: videoWidth,
        height: videoHeight,
        backgroundColor: 'rgb(255,255,255)',
        paddingTop: 0
      }
    })

    return (
      <Video
        source={{ uri: 'https://www.youtube.com/embed/3NhHqPA8nIs?rel=0&autoplay=0&showinfo=0&controls=0' }}
        paused={this.state.pause}
        style={styles.videoContainer}
      />
    )
  }

}

export default VideoPlayer;

和App.js

import React, {Component} from 'react';
import {StyleSheet, Text, View} from 'react-native';
import Header from './components/Header';
import VideoPlayer from './components/Video';

export default class App extends Component {
  render () {
    return (
      <View style={styles.container}>
      <View style={styles.headerContainer}>
        <Header />
      </View>
      <View style={styles.videoContainer}>
        <VideoPlayer />
      </View>
        <Text style={{color: 'white'}}>Hello Wilbur!</Text>
        <Text style={{color: 'white'}}>Some text</Text>
        <Text style={{color: 'white'}}>some other text</Text>
      </View>
    )
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: 'rgb(4,4,4)',
    alignItems: 'center',
    justifyContent: 'center',
  },
  headerContainer: {
    position: 'absolute',
    flex: 1,
    top: 0,
    height: 72,
    alignSelf: 'stretch',
    paddingTop: 20,
    paddingLeft: 12,
    paddingRight: 12,
    flexDirection: 'row',
    backgroundColor: 'white'
  },
  videoContainer: {
    flex: 0,
    backgroundColor: 'rgb(4,4,4)',
    alignItems: 'center',
    justifyContent: 'center',
    paddingTop: 0
  }
});

如果我不实例化该组件,则可以很好地渲染该应用程序,甚至可以使其与WebView一起使用,但是,当我尝试导入VideoPlayer组件时,会收到上述错误。

预期行为

功能正常的视频组件,或者至少是与视频播放器有关的错误。

平台

  • iOS

视频样本

https://www.youtube.com/embed/3NhHqPA8nIs?rel=0&autoplay=0&showinfo=0&controls=0

有人看到我在做什么错吗? 谢谢。

1 个答案:

答案 0 :(得分:0)