首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不变冲突:元素类型无效:应为字符串(对于内置组件)或类/function,但got: undefined

不变冲突:元素类型无效:应为字符串(对于内置组件)或类/function,但got: undefined
EN

Stack Overflow用户
提问于 2018-06-20 16:47:56
回答 1查看 199关注 0票数 0

你好,当我试图实现一个包含注销按钮的头文件时,我得到了这个错误。我得到的错误是检查render method.But can't‘t The error.The文件,在这个文件中我得到的错误如下

代码语言:javascript
复制
  import React from "react";
    import {
      ScrollView,
      View,
      StyleSheet,
      Image,
      Text,
      Button,
      Title,
      Header,
      AsyncStorage,
      Icon
    } from "react-native";
    import {
      RkText,
    } from "react-native-ui-kitten";
    import Card from "./Card";
    import CardSection from "./CardSection";
    import Login from './Login';


    export class GridV2 extends React.Component {
      onPressLogout(){
          AsyncStorage.removeItem(token);
      }

      render() {
        return (
        <View>
        <Header style={{backgroundColor:'#B00000'}}>    
               <Button
                  transparent
                  onPress={() => this.onPressLogout()}
                >
                  <Icon 
                  style= {{color: '#ffffff', fontSize: 25, paddingTop:0}}
                  name="bars" />
                </Button>
            </Header>
          <Card>
              <CardSection>
            </CardSection>
          </Card>

          </View>
        );
      }
    }

我要在我的登录screen.Login屏幕中导入此GridV2,如下所示。这段代码中的错误是什么?请帮助..

代码语言:javascript
复制
    import React, {Component} from 'react';
    import  { Container,
        Title,
        InputGroup,
        Input,
        Button,
        Text,
        View,
        Spinner,
        Item,
        Label,  
    }  from 'native-base';
    import {
        StyleSheet,
        Image,
        Navigator,
        TouchableOpacity,
        AsyncStorage,
        Linking
    } from 'react-native';

    import QASection from './QASection';
    import GridV2 from './grid2';

    class Login extends Component{
        state = { userdetail: [] };
        constructor(props) {
            super(props);
            this.initialState = {
                isLoading: false,
                error: null,
                username: '',
                password: ''        
            };
            this.state = this.initialState;
        }
        render() {
            return();
        }
EN

回答 1

Stack Overflow用户

发布于 2018-06-20 17:04:17

您的导出/导入是错误的。请删除所有未使用的导入,并检查您要导入的导入是否在从中导入它们的包中。例如,据我所知,在react-native中没有Header组件(DOC您应该使用命名导入来导入GridV2

代码语言:javascript
复制
import { GridV2 } from './grid2';

或首先导出为默认设置:

代码语言:javascript
复制
export default class GridV2 extends React.Component {

请检查您的其他导入文件是否完好无损(文件名等是否正确)。此link很好地解释了导出/导入。

此外,您不应该像这样从render方法返回return ();。相反,返回null,如下所示:

代码语言:javascript
复制
return (null);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50943999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档