Текстовые строки должны отображаться в проблеме компонента <Text> в React Native

Я использую версию 2.0.1 response-native-cli и версию 0.57.8 response-native. Я изучаю React native и столкнулся с проблемой при попытке визуализировать два разных дочерних компонента (Header и AlbumList) в основном компоненте App.

Проблема

Текстовые строки должны отображаться в проблеме компонента &lt;Text&gt; в React Native

Ошибка исчезнет, ​​если я удалю теги <View> и компонент AlbumList в файле index.js (то есть покажу только один компонент). Я просмотрел такие темы, как это, но все еще не могу определить, как я неправильно использую тег <View>.

index.js

import React from 'react';
import { View, Text, AppRegistry } from 'react-native';
import Header from './src/components/Header';
import AlbumList from './src/components/AlbumList';

//>Create a component
const App = () => (
<View> <Header headerName = {'Albums'} /> 
<AlbumList />
</View>

);


//>Render component on device
AppRegistry.registerComponent('albums', ()=> App);

AlbumList.js

import React from 'react';
import { View, Text } from 'react-native';

const AlbumList = () => {
return (
  <View><Text> Album List </Text></View>
);
};

export default AlbumList;

Я думаю, что проблема не в файле Header.js, а в том, чтобы поделиться кодом.

Header.js

import React from 'react';
import { Text, View } from 'react-native'; // The view tag allows us to position and wrap elements

// Make a component
const Header = (props) => {

  const { textStyle, viewStyle } = styles;

  return (
    <View style = {viewStyle}>
      <Text style = {textStyle}> {props.headerName}</Text>
    </View>
  );
};

const styles = {
  viewStyle: {
      backgroundColor: '#F8F8F8',
      alignItems: 'center',
      justifyContent: 'center',
      height: 60
  },

  textStyle: {
    fontSize: 20
  }
};

export default Header;

Помощь приветствуется. Заранее спасибо!

что вы написали в компоненте / index.js?

user10753862 27.12.2018 05:16

У меня есть index.js в корне, и его содержимое есть в посте.

keshinpoint 27.12.2018 05:17
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
2
8 028
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

в вашем файле index.js замените функцию приложения на ниже,

//Create a component
const App = () => (
  <View><Header headerName = {'Albums'} /><AlbumList /></View>
);

здесь не должно быть места между компонентами

при использовании собственных компонентов React, попробуйте поместить каждый элемент в новую строку, таким образом вам не придется беспокоиться о пробелах

const App = () => (
      <View>
        <Header headerName = {'Albums'} />
        <AlbumList />
      </View>
    );

Сообщите мне, если это сработает

Большое спасибо! Вы знаете, каким был бы синтаксис, если бы я не хотел беспокоиться о пробелах? Я пробовал это, и это не сработало - const App = () => {return (<View> <Header headerName = {'Albums'} /> <AlbumList /> </View>); };

keshinpoint 28.12.2018 03:22

@KeshavVasudevan, я обновил ответ, указав предпочтительный синтаксис. Проверить это.

Farid Ansari 28.12.2018 07:07

Спасибо огромное @farid!

keshinpoint 30.12.2018 20:18

В моем случае у меня была неуместная точка с запятой, как показано, и это вызывало у меня такую ​​головную боль

 <Screen>
        <RestaurantScreen />; //Make sure you have no misplaced semicolon like in my case here
      </Screen>

Другие вопросы по теме