React-Native中的youtube组件的元素类型无效错误

时间:2016-07-31 05:57:56

标签: youtube react-native

我试图在我的本机应用中使用youtube组件。但它一直给我一个错误"元素类型无效:期望一个字符串或一个类/函数但得到:object。检查xx"

的渲染方法

我安装了react-native-youtube,我的package.json似乎没问题。

"dependencies": {
    "react": "15.2.1",
    "react-native": "0.30.0",
    "react-native-tabbar-navigator": "^0.3.0",
    "react-native-youtube": "^0.7.2"
  }
}

我的Main.js代码如下所示。

import React, { Component } from 'react';
import {
  StyleSheet,
  Text,
  TextInput,
  View,
  TouchableHighlight,
  ActivityIndicator,
  Image
} from 'react-native';


var YouTube = require('react-native-youtube');



Class Main extends Component {


render() {
    return (

      <View style={styles.container}>

        <YouTube
        ref="youtubePlayer"
        videoId="KVZ-P-ZI6W4" 
        play={true}           
        hidden={false}        
        playsInline={true}    
        loop={false}          
        onReady={(e)=>{this.setState({isReady: true})}}
        onChangeState={(e)=>{this.setState({status: e.state})}}
        onChangeQuality={(e)=>{this.setState({quality: e.quality})}}
        onError={(e)=>{this.setState({error: e.error})}}
        onProgress={(e)=>{this.setState({currentTime: e.currentTime, duration: e.duration})}}

        style={{alignSelf: 'stretch', height: 300, backgroundColor: 'black', marginVertical: 10}}/>

</View>

    );
    }

    }

我真的不知道为什么会发生这种错误。请分享你的任何想法! (: 最好

1 个答案:

答案 0 :(得分:0)

使用import YouTube from 'react-native-youtube';代替var YouTube = require('react-native-youtube');

此外,代码中的Class以大写字母开头,而不是class