Javascript navigator在React Native中同时存在导航和容器道具错误

Javascript navigator在React Native中同时存在导航和容器道具错误,javascript,reactjs,react-native,Javascript,Reactjs,React Native,非常重要:我的项目正在运行,当我将它们复制到备份文件夹并在删除文件后使用时,bat!!,我发现导航错误: 错误:此导航器同时具有导航和容器道具,因此不清楚它是否应该拥有自己的状态。移除道具:“主题”,如果导航器应该从导航道具获取其状态。如果导航器应保持其自身状态,则不要传递导航道具 以下是我的App.js代码: import { createAppContainer } from "react-navigation" import AppNavigator from './app/Navi/Na

非常重要:我的项目正在运行,当我将它们复制到备份文件夹并在删除文件后使用时,bat!!,我发现导航错误:

错误:此导航器同时具有导航和容器道具,因此不清楚它是否应该拥有自己的状态。移除道具:“主题”,如果导航器应该从导航道具获取其状态。如果导航器应保持其自身状态,则不要传递导航道具

以下是我的App.js代码:

import { createAppContainer } from "react-navigation"
import AppNavigator from './app/Navi/Navigate'

const AppContainer = createAppContainer(AppNavigator);

export default class App extends React.Component {
  render() {
    return <AppContainer />
  }
}
和index.js,其中有error(error表示在第29行中引用了第40行):

不知道发生了什么事

编辑 TabNavigator强制编码:

const redundernav和customTabs是选项卡ui的一些定制

import { createBottomTabNavigator, createAppContainer } from 'react-navigation';

import Home from '../Home/home'
import LogOut from '../Logging/logout'
import Search from '../Route/Search'
import Poll from '../Poll/Poll'
import Signate from '../sign/signate'

const renderNav = (name, tintColor) => (
    <View style={{flex: 1, alignItems: 'center', justifyContent: 'center'}}>
      <Icon name={name} size={15} style={{color: tintColor}} />
    </View>
  )

const customTabs = ({ navigation }) => ({
    tabBarIcon: ({tintColor }) => {
      const { routeName } = navigation.state;
      if (routeName === 'LogOut') {
        return renderNav('md-log-out', tintColor);
      } else if (routeName === 'Home') {
        return renderNav('md-planet', tintColor);
      } else if (routeName === 'Route') {
        return renderNav('md-compass', tintColor);
      } else if (routeName === 'Poll') {
        return renderNav('ios-checkmark-circle', tintColor);
      } else if (routeName === 'Sign') {
        return renderNav('hand', tintColor);
      }
    }
  });

const TabNavigator = createBottomTabNavigator({
    LogOut : LogOut,
    Route : Search,
    Home : Home,
    Poll : Poll,
    Sign : Signate
},
{
    defaultNavigationOptions: customTabs,
  animationEnabled: true,
  swipeEnabled: true,
  tabBarPosition: 'bottom',
  initialRouteName: 'Poll',
  tabBarOptions: {
    showLabel: false,
    activeTintColor: 'yellow',
    inactiveTintColor: '#fff',
    style:{
      borderTopColor: '#ccc',
      borderTopWidth: 3,
      backgroundColor:'#191919',
      height: 50,
    },
    activeTabStyle: {
      backgroundColor: 'white',
      borderBottomWidth: 40,
      borderColor: '#6C1D7C'
    }
  },
});

export default createAppContainer(TabNavigator);
从'react navigation'导入{createBottomTabNavigator,createAppContainer};
从“../Home/Home”导入主页
从“../Logging/LogOut”导入注销
从“../Route/Search”导入搜索
从“../Poll/Poll”导入轮询
从“../sign/Signate”导入Signate
常量renderNav=(名称、颜色)=>(
)
const customTabs=({navigation})=>({
tabBarIcon:({tintColor})=>{
const{routeName}=navigation.state;
如果(routeName===“注销”){
返回renderNav('md-log-out',淡色);
}else if(routeName==='Home'){
返回renderNav('md-planet',淡色);
}else if(routeName=='Route'){
返回renderNav('md-compass',淡色);
}else if(routeName==='Poll'){
返回renderNav('ios-checkmark-circle',淡色);
}else if(routeName==='Sign'){
返回renderNav('hand',淡色);
}
}
});
const TabNavigator=createBottomTabNavigator({
注销:注销,
路线:搜索,
家:家,
投票:投票,
签名:签名者
},
{
默认导航选项:自定义选项卡,
animationEnabled:没错,
是的,
tabBarPosition:'底部',
initialRouteName:“轮询”,
选项卡选项:{
showLabel:false,
activeTintColor:'黄色',
InactiveIntColor:“#fff”,
风格:{
borderTopColor:“#ccc”,
边框宽度:3,
背景颜色:“#191919”,
身高:50,
},
活动选项卡样式:{
背景颜色:“白色”,
宽度:40,
边框颜色:“#6C1D7C”
}
},
});
导出默认createAppContainer(TabNavigator);

据我所见,您在TabNavigator文件中返回了一个AppContainer,所有应用程序应该只有一个AppContainer

因此,最好的方法是直接返回Tabnavigator

export default TabNavigator;
我决定如下

原件:

export default createAppContainer( createBottomTabNavigator( {
修改:

export default createBottomTabNavigator( {

那么对于您的情况,“LoginBoolean”的价值是什么呢?我们能看看TabNavigator里面是什么吗?我添加了TabNavigator代码。LoginBoolean得到这些值:“是”和“否”(实际上不是布尔值!)
export default createAppContainer( createBottomTabNavigator( {
export default createBottomTabNavigator( {