Хобрук: Ваш путь к мастерству в программировании

ReactDOM не отображает компонент

Я новичок в ReactJs, и я хотел создать веб-сайт с использованием React и Material-ui на платформе метеора. До сих пор все шло хорошо, но недавно у меня было несколько проблем.

Это мой main.jsx (клиентская сторона):

import React from 'react';
import { Meteor } from 'meteor/meteor';
var ReactDOM = require ('react-dom');

import {body_design} from '../imports/ui/ui_design/design_body.jsx';

Meteor.startup(() => {
  ReactDOM.render(
  <p>
    This is a test!
    <body_design/>
  </p>, 
  document.getElementById('main_body'));
});

Как вы можете заметить, я пытаюсь визуализировать body_design, который определен здесь (в design_body.jsx):

import React from 'react';
import ReactDOM from 'react-dom';
import MuiThemeProvider from 'material-ui/styles/MuiThemeProvider';


import {Navigation_Bar} from './Template_design.jsx';

export const body_design = () => (
    <MuiThemeProvider>
        <Navigation_Bar/>
    </MuiThemeProvider>

);

И, наконец, Navigation_Bar импортируется отсюда (в Template_design.jsx):

import React from 'react';
import AppBar from 'material-ui/AppBar';

// Needed for onTouchTap
import injectTapEventPlugin from 'react-tap-event-plugin';
injectTapEventPlugin();

export const Navigation_Bar = () => (
    <AppBar
        title = "Home"
        iconClassNameRight="muidocs-icon-navigation-expand-more"
    />
);

Итак, что удивительно, все мои импорты работают правильно, за исключением элемента реакции в вызове ReactDOM.render внутри main.jsx. Когда запускаю сервер в браузере "Это тест!" распечатывается, но не . Самое интересное, что import{body_design} работает отлично...

Вот основной html для размещения:

<head>
    <title>HomePage</title>
</head>

<body>
    <div id = 'main_body'>
    </div>
</body>

Таким образом, элементы, отображаемые main.jsx, расположены правильно. Но почему-то body_design никуда не ведет. Когда я пытаюсь получить доступ к его пути определения, он никуда не ведет.

Помощь очень ценится спасибо!


  • вместо body_design попробуйте Body_design (заглавная Б). 27.06.2017
  • Спасибо за ответ Маянк Шукла! Это помогло =) 27.06.2017

Новые материалы

Блоги, которые обязательно нужно прочитать специалистам по обработке и анализу данных :
Добро пожаловать в 2020! Новый год и новое десятилетие. Поскольку мы начинаем новый и захватывающий год в науке о данных, важно, чтобы профессионалы открыли для себя лучшие блоги по науке о..

Универсальный базовый доход
Универсальный базовый доход В последние годы концепция всеобщего базового дохода (УБД) набирает обороты как все более эффективное решение для борьбы с растущим неравенством доходов и..

Освоение Python для анализа финансовых данных: руководство по получению данных о доходах от акций
Если вы хотите научиться получать данные о доходах от акций с помощью Python, то это руководство для вас! В этой статье мы рассмотрим несколько примеров сбора данных о доходах от акций. Мы..

Абсолютно имеет смысл.
Абсолютно имеет смысл. Мой репетитор даже предложил то же самое. Одна проблема, с которой я столкнулся, заключается в том, что для каждой из категорий не было ярлыка «хорошо». Если я перебираю..

МАШИННОЕ ОБУЧЕНИЕ И EDA
Каковы шаги в машинном обучении Определение проблемы Генерация гипотез Извлечение данных Исследование данных Прогнозное моделирование Развертывание модели Зачем нам ЭДА? Идентификация..

В чем основные различия между ReactJS и React-Native?
В чем основные различия между ReactJS и React-Native? Что я узнал, создавая веб-приложения, а затем мобильные приложения на React React-Native существует уже около 2 лет и стал..

LeetCode — Умножение строк
Постановка задачи Даны два неотрицательных целых числа num1 и num2 , представленные в виде строк, вернуть произведение num1 и num2 , а также представлен в виде строки. Примечание . Вы..