1

自上次更新以来,我的 expo 项目总是产生错误:navigator 已被弃用,并已从此包中删除。现在可以从“react-native-deprecated-custom-components”而不是“react-native”安装和导入它。在 [...] 了解替代导航解决方案。 在此处输入图像描述 但是当我尝试从新包中导入它时,我收到错误:开发服务器返回响应错误代码:500 [...]。 在此处输入图像描述

我使用 expo 和以下代码。然而,这个错误出现在我想用 expo 创建的每个新项目中。旧项目仍然有效。当我在我的新项目中复制旧代码时,我得到了同样的错误。我认为代码是功能性的,问题出在包管理器中。

import Expo from 'expo';
import React from 'react';
import {Navigator} from 'react-native-deprecated-custom-components';
import {Text, View, /*Navigator*/} from 'react-native';

class App extends React.Component {

  	constructor(){
  		super()

  	//	this.renderScene = this.renderScene.bind(this) /* bindet die funktion renderScene an das aktuelle this objekt*/
  	}

  	renderScene(route, navigator){
  		if(route.name === 'WelcomePage'){
  			return <WelcomePage navigator={navigator}/>
  		}
  		else if(route.name === 'PlayerSelect'){
  		    return <PlayerSelect navigator={navigator}/>
  	 }
  	}








    render() {
      return (
        <View>
        <Navigator
          initialRoute={{name: 'WelcomePage'}}
          renderScene={this.renderScene}
          />

          <Text> Hallo</Text>
         </View>
      );
    }
    }

Expo.registerRootComponent(App);

我必须做什么才能让我的代码再次工作?提前致谢,

马菲纽斯

4

2 回答 2

2

我相信你应该像下面这样导入和使用它:

import CustomComponents from 'react-native-deprecated-custom-components';

<CustomComponents.Navigator
  initialRoute={{name: 'WelcomePage'}}
  renderScene={this.renderScene}
/>
于 2017-05-25T21:02:40.897 回答
-1

我有一个链接可以解决我同样的错误,所以我想这里也可以。 http://www.hongming.me/?p=670

于 2017-06-09T07:01:26.553 回答