我试图在我的本机应用中使用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>
);
}
}
我真的不知道为什么会发生这种错误。请分享你的任何想法! (: 最好
答案 0 :(得分:0)
使用import YouTube from 'react-native-youtube';
代替var YouTube = require('react-native-youtube');
此外,代码中的Class
以大写字母开头,而不是class