javascript - 如何修复 Invariant Violation:元素类型无效:预期为字符串(对于内置组件)
问题描述
尽管我的进口很好,但我收到了这个错误。
不变违规:元素类型无效:预期为字符串(对于内置组件)或类/函数(对于复合组件),但得到:未定义。您可能忘记从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。检查“底部导航”的渲染方法。
我的代码如下所示:
index.js
import React from 'react';
import {
StyleSheet,
Text,
Button,
View,
ScrollView,
TouchableOpacity,
Image,
Component,
} from 'react-native';
import { createMaterialBottomTabNavigator } from '@react-navigation/material-bottom-tabs';
import { MaterialCommunityIcons } from 'react-native-vector-icons';
import Jogadores from '../jogadores';
import Lista from '../jogadores/lista';
function HomeScreen() {
return (
<View style={styles.home}>
<ScrollView scrollEventThrottle={16}>
<View>
<Text style={styles.texto}>Principais Vídeos</Text>
</View>
<View style={styles.slider}>
<ScrollView horizontal={true} showsHorizontalScrollIndicator={false}>
<Lista
imageUri={require('../../images/ronald-juv.jpg')}
name="Cristiano Ronaldo"/>
<Lista
imageUri={require('../../images/messi-footer.jpg')}
name="Lionel Messi"/>
<Lista
imageUri={require('../../images/neymar.jpg')}
name="Neymar"/>
<Lista
imageUri={require('../../images/salah.jpg')}
name="Mohamed Salah"/>
<Lista
imageUri={require('../../images/mbappe.jpg')}
name="Kylian Mbappé"/>
<Lista
imageUri={require('../../images/alisson.jpg')}
name="Alisson"/>
<Lista
imageUri={require('../../images/bruyne.jpg')}
name="Kevin De Bruyne"/>
</ScrollView>
</View>
</ScrollView>
</View>
);
}
const Tab = createMaterialBottomTabNavigator();
export default function Home({navigation}) {
return (
<Tab.Navigator
activeColor="#F00"
barStyle={{backgroundColor: '#272727'}}>
<Tab.Screen
name="Home"
component={HomeScreen}
options={{
tabBarLabel:'Home',
tabBarIcon:({color,size}) =>(
<MaterialCommunityIcons name="soccer" color={'#fff'} size={15} />
)
}} />
<Tab.Screen name="Jogadores" component={Jogadores} />
<Tab.Screen name="Settings" component={HomeScreen} />
</Tab.Navigator>
);
}
有人能帮我吗 ?
解决方案
这通常意味着您的其中一个进口不正确。我建议在您的渲染方法中设置一个断点并检查每个导入,寻找一个看起来不正确的。(无论是那个还是console.log
每个导入的组件并在那里寻找它。
推荐阅读
- python-3.x - ONNX 图形 Python
- sql - DB2 SQL 将 NULL 插入 NOT NULL WITH DEFAULT
- angular - ng 测试要求我在运行任何单元测试之前修复所有 linting
- docker - 使用 docker run 命令获取结果加上没有文件或目录
- angular - Angular Flex 布局间隙变化
- excel - 如果在 BI Publisher Excel 模板中有条件
- python - Django 拒绝来自 Python 请求的请求
- python-3.x - Python 类方法也是实例方法
- powershell - 在 Powershell 中获取识别软件数量
- azure - 如何在天蓝色批处理帐户中指定任务的用户身份“池默认用户(管理员)”?