首页 文章

React-Native:元素类型无效

提问于
浏览
0

我有Nativebase Footer我有容器的问题,如果我包含MyFooter,它给我这个错误:元素类型无效:期望一个字符串(对于内置组件)或类/函数(对于复合组件)但得到:undefined . 您可能忘记从其定义的文件中导出组件 .

// main.js
import MyFooter from './MyFooter';
...
<Container>
    <MyHeader title="Оплаты" />
    <Content></Content>
    <MyFooter />
  </Container>

和页脚组件

// MyFooter.js
const MyFooter = props => {
  return (
    <Footer>
      <FooterTab>
        <Button vertical active>
          <Text>Info</Text>
        </Button>
        <Button vertical >
            <Text>Remove</Text>
        </Button>
      </FooterTab>
    </Footer>
  );
}
export default MyFooter;

但是,如果我像这样更改MyFooter的渲染方法:

// MyFooter.js
return (
  <View>
    <Text>
      Test
    </Text>
  </View>
)

所以问题不在导出/导入中,因为MyFooter中的另一个渲染都可以完美地工作 . 请问有人帮忙吗?

Answer - 从'react-native'导入{文字,页脚,页脚,按钮,图标}; ('react-native'而不是'native-base')

2 回答

  • 1

    如果您完全按原样粘贴代码,那么在MyFooter.js中返回语句后,您将错过右括号

  • 2

    这是您的 MyFooter 组件尝试首先导出组件 export default MyFooter ,如下所示:

    const MyFooter = () => (   
      <Footer>
        <FooterTab>
          <Button vertical active>
            <Icon name="information" />
            <Text>Инфо</Text>
          </Button>
          <Button vertical >
            <Icon name="add" />
            <Text>Оплаты</Text>
          </Button>
          <Button vertical >
            <Icon name="remove" />
            <Text>Снятия</Text>
          </Button>
        </FooterTab>
      </Footer>
    );
    
    export default MyFooter;
    

相关问题