当前位置: 首页 > 面试题库 >

React NativeBase没有显示我导入的组件

百里伟
2023-03-14
问题内容

我对React和React Native还是相当陌生,并且正在使用React NativeBase。

我设法在单个文件中完成以下工作,但是现在我只是试图将我的代码分成单独文件中的多个组件。

问题是,我的导入组件未显示。我已经为此苦苦挣扎了一段时间,但我看不到自己在做错什么……可能真的很愚蠢。

这是我的代码:

代码/index.ios.js

import React, { Component } from 'react';
import {
  AppRegistry,
  StyleSheet,
  Text,
  View
} from 'react-native';
import {
  Container,
  Title,
  Header,
} from 'native-base';
import MainContent from './main';

class AwesomeNativeBase extends Component {
  render() {
    return (
      <Container>
        <Header>
          <Title>My awesome app</Title>
        </Header>
        <MainContent />
      </Container>
    );
  }
}
AppRegistry.registerComponent('AwesomeNativeBase', () => AwesomeNativeBase);

代码/ main.js

import React from 'react';
import { Text } from 'react-native';
import { Content } from 'native-base';

export default class MainContent extends React.Component {
  render() {
    return (
      <Content>
        <Text>Oh hello there!</Text>
      </Content>
    );
  }
}

我正在使用此运行:

rnpm link
react-native run-ios

因此,请澄清一下,其中的代码可以index.ios.js正常显示,并且标题显示在iPhone模拟器中,但是其中的文本main.js却没有。

任何帮助深表感谢!


问题答案:

所以我已经解决了这个问题。似乎React NativeBase不允许您将该<Content>部分放在主要组件之外。像这样的作品:

代码/index.ios.js

import React, { Component } from 'react';

import {

  AppRegistry,

  StyleSheet,

  Text,

  View

} from 'react-native';

import {

  Container,

  Title,

  Header,

  Content,

} from 'native-base';

import MainContent from './main';



class AwesomeNativeBase extends Component {

  render() {

    return (

      <Container>

        <Header>

          <Title>My awesome app</Title>

        </Header>

        <Content>

          <MainContent />

        </Content>

      </Container>

    );

  }

}

AppRegistry.registerComponent('AwesomeNativeBase', () => AwesomeNativeBase);

代码/ main.js

import React from 'react';

import { Text } from 'react-native';



export default class MainContent extends React.Component {

  render() {

    return (

      <Text>Oh hello there!</Text>

    );

  }

}

因此,如果您现在注意到的话,我的<Text>标签中只有标签,main.js而标签中却没有<Content>标签。



 类似资料:
  • 问题内容: 我是Java初学者 我试图制作我的jframe节目,但没有 它不起作用 问题答案: 我认为您没有正确声明您的JFrame。这是创建简单框架的示例:

  • 所以我在玩JPanel和JFrames,我注意到我创建的JPanel在添加到Jframe对象时没有显示。注意,当我在Jframe构造函数中创建了一个JPanel,并在将其添加到Jframe之前提供了JPanel参数时,它起了作用。然而,现在我使用的是我创建的JPanel对象,它不再工作了。这就是我所做的。 编辑:事实上,我想我发现了错误。JPanel有它的绘制方法,当删除时,它允许Jframe显示

  • vue.js - 没报错,但是该显示的组件没有显示(element-plus) 控制台也没报错,在后台看是这个模块是空的没有元素

  • 请帮我把它修好。提前谢了。

  • 这里是第一次Eclipse用户。我正在使用“Eclipse IDE for JavaScript Web Developers”Indigo Service Release2,并将EaselJS库包含在我的项目中。本地主机上的HTTP预览是我的服务器。 我的问题是,当我对正在处理的index.html文件进行更改并选择“运行”时,HTTP预览(在Eclipse IDE窗口的一部分中运行)不会显示更

  • 我搜索了一个小时来找到问题的解决方案,我使用maven to pom.xml来查找这个导入的库org.springframework.jdbc.core.jdbctemplate 我的pom.xml 结果是:-