Я работал над этой программой, и недавно я пытался использовать некоторые новые компоненты из библиотекиact-native, такие как Icon
и Header
, но всякий раз, когда я пытаюсь использовать их в функции рендеринга, я получаю ошибку :
"Нарушение инварианта: Нарушение инварианта: недопустимый тип элемента: ожидается строка (для встроенных компонентов) или класс / функция (для составных компонентов), но получено: undefined. Вы, вероятно, забыли экспортировать свой компонент из файла, в котором он определен, или вы могли смешать импорт по умолчанию и имя. "
Это действительно странно для меня, потому что я без проблем использовал такие компоненты, как Image
, Text
и View
, поэтому я не понимаю, почему у меня сейчас возникла проблема с эти новые компоненты. Я не уверен, что я изменил в своей программе, чтобы что-то подобное произошло.
Единственное, о чем я могу думать, это то, что «Настройки» раньше были классом по умолчанию, но теперь это не так, но это не объясняет, как все еще работает старый компонент, который я использовал из библиотеки. Имейте в виду, что другие компоненты, которые я импортировал ранее, например Image
, другие работают.
Вот и фрагмент оскорбительного кода:
import React, { Component } from 'react';
import {StyleSheet, Text, View, TouchableHighlight, Image, Header, Icon} from 'react-native';
import { createStackNavigator } from 'react-navigation';
export class Settings extends React.Component {
render(){
return (
<View>
<View style={{height: 55, backgroundColor: '#007ebc'}}>
<View style={{flexDirection: "row", marginLeft: 10}}>
<Icon //<-------USING ICON WILL GIVE ME ERROR
name = 'arrowleft'
/>
<Image source={require("../assets/LogoLrg.png")}
style={{ width: 55, height: 30, marginTop: 10 }}
/>
<Text style={styles.headerText}> Settings </Text>
</View>
</View>
</View>
)
}