Ошибка NavigatorIOS — React Native

Реагировать на родной

Когда я пытаюсь перейти на другую страницу, я продолжаю получать эту ошибку

goToMenu(){
 this.props.navigator.push({
  component: Menu,
  title: 'Main Menu',
  passProps: {navigator: this.props.navigator},
})
}

<View style={styles.mainContainer}>
 <TouchableHighlight
  style={styles.menuButton}
  onPress={this.goToMenu.bind(this)}>
  <Text style={styles.buttonText}> Go To Menu </Text>
 </TouchableHighlight>
</View>

тип элемента недействителен, ожидается строка (для встроенных компонентов) или класс/функция для составных компонентов, но получен метод рендеринга проверки объекта 'navigatorios'


person Chris Manfredi    schedule 02.03.2016    source источник
comment
что-то не так с компонентом Menu, можете прикрепить его код?   -  person Ivan Chernykh    schedule 02.03.2016


Ответы (1)


Это довольно распространенная ошибка. Обычно это означает, что возникла проблема с импортируемым компонентом. Убедитесь, что вы экспортируете Menu и правильно импортируете его (правилен ли относительный путь к файлу). Если путь к файлу правильный...

Экспорт по умолчанию

export default () => (
     ...
);

Затем импортируйте вот так

import Menu from 'relativeFilePath'

Именованный экспорт

Или, если в меню файла есть несколько именованных экспортов, например.

export const Menu ...
export const SomeOtherComponent ...

Вам нужно будет разобрать импорт и сопоставить имя...

import {Menu} from 'relativeFilePath' 

Подробнее см. здесь параметры экспорта модуля JavaScript ES6+

Если это не работает, проблема связана с компонентом меню, к которому вы пытаетесь перейти.

person Michael Hancock    schedule 02.09.2016