反应本机元素错误:不变违规:元素类型无效



我正在尝试使用React-Native-elements中的FormValidationMessage。我看不到我在做什么错。我有错误:

Invariant Violation: Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.

我像文档一样导入:

import { Input, Button, FormValidationMessage } from 'react-native-elements';

使用它的功能:

showLoginError() {
    console.log(this.props.error); //I can log the correct error here
    if (this.props.error) {
      return(
        <FormValidationMessage>{this.props.error}</FormValidationMessage>
      )
    }
}

我直接在这样的渲染中调用此功能

<View style={{width: 250}}>
   {this.showLoginError()}
</View>

我在互联网上看了一眼,但似乎没有一个明确的解决方案。

看起来他们在最新版本中将组件从代码库中取出。

在Div>

在没有错误的情况下,您需要使函数返回null。

showLoginError() {
  console.log(this.props.error); //I can log the correct error here
  if (this.props.error) {
    return(
      <FormValidationMessage>{this.props.error}</FormValidationMessage>
    )
  } else {
    return null;
  }
}

在我的情况下(使用webpack)是:

之间的区别
import {MyComponent} from '../components/xyz.js';

vs

import MyComponent from '../components/xyz.js';

第二个在第一个引起错误时起作用。

相关内容

  • 没有找到相关文章

最新更新