【问题标题】:In React native, what is the exception Invariant Violation: expected a component class got div?在 React native 中,异常 Invariant Violation: expected a component class got div 是什么?
【发布时间】:2015-10-19 10:52:51
【问题描述】:

我正在制作一个 React Native 应用程序并收到错误 Invariant Violation: expected a component class got div

这是什么意思?

这是应用程序:

'use strict';

var React = require('react-native');
var {
  Text,
  View,
  AppRegistry
} = React;

var Select = require('react-select');

var options = [
  { value: 'val1', label: 'Value 1' },
  { value: 'val2', label: 'Value 2' },
];


var MyApp = React.createClass({
  render: function() {
    return (
      <View>
        <Text>I am selecting:</Text>
        <Select
            name="form-field-name"
            value="val1"
            options={options}
        />
      </View>
    );
  }
});

AppRegistry.registerComponent('AwesomeProject', () => MyApp);

【问题讨论】:

    标签: react-native


    【解决方案1】:

    react-select 是一个针对 Web 的 React 项目,而不是针对 React Native 的项目。当你尝试使用它时,React Native 发现它是使用 HTML 构建的,并抱怨 &lt;div&gt; 标签。你不能简单地使用为 Web 构建的组件并期望它们适用于 React Native。

    【讨论】:

    • 谢谢,是的,经过一番摸索后发现它为什么不起作用。
    • 对于使用 RN 在移动设备上进行选择,您有什么建议?
    • 我对解决方案很感兴趣。我有另一个项目,我只是一时兴起渲染了一个&lt;Text&gt; 组件并得到了这个错误。我应该尝试渲染什么?
    • 如果你有一个文本节点,那么你确定你实际上是在返回它并且你已经需要它了吗?当您认为节点实际上是空值时,通常会引发它。
    猜你喜欢
    • 1970-01-01
    • 2020-11-20
    • 2022-12-16
    • 2018-03-26
    • 1970-01-01
    • 1970-01-01
    • 2017-09-16
    • 2018-05-29
    • 1970-01-01
    相关资源
    最近更新 更多