【发布时间】:2020-02-11 13:28:29
【问题描述】:
我正在寻找选项卡导航名称旁边的图标,但我收到此错误:
我不使用expo然后我通过这种方式导入:
import { Ionicons } from 'react-native-vector-icons/Ionicons';
还有:
import { createBottomTabNavigator } from '@react-navigation/bottom-tabs';
这是主要代码:
const MainTab=()=>{
const Tab = createBottomTabNavigator();
return(
<Tab.Navigator
screenOptions={({route})=>({
tabBarIcon:({color, size})=>{
let iconName;
if (route.name=='Home') {
iconName='ios-home'
}else if(route.name=='Settings'){
iconName='logo-settings'
}
return <Ionicons name={iconName} size={size} color={color} />
}
})}
>
<Tab.Screen name="Home" component={Home} />
<Tab.Screen name="Settings" component={SecondPage} />
</Tab.Navigator>
)}
我写错了哪一部分?
【问题讨论】:
-
从导入的 Ionicons 中删除花括号是否有帮助?
-
问题可能是 React 在没有给
iconName赋值的情况下尝试渲染图标 -
@SydneyY 谢谢哥们,你的解决方案有效,但我现在遇到了另一个问题,图标没有正确显示,请看一下这个截图imgur.com/a/SYM5fKB据我所知,我已经安装了 Ionicons (请写下您的解决方案作为答案,我会投票给它)
-
找到了!如果您使用导入 Ionicons,则该组件是 Ionicons,而不是 Icon。
<Ionicons name={iconName} /> -
@SydneyY 我已经这样做了,就像这样
return <Ionicons name={iconName} size={size} color={color} />但问题仍然存在
标签: reactjs react-native react-navigation tabnavigator react-native-tabnavigator