Реагировать на горячую перезагрузку 3

Я пробую новый React Hot Loader 3 и получаю предупреждение сообщение:

warning.js:44 Предупреждение: React.createElement: тип не должен быть нулевым, неопределенным, логическим или числовым. Это должна быть строка (для элементов DOM) или ReactClass (для составных компонентов). Проверьте метод рендеринга AppContainer.

Это файл приложения. Что не так?
Ps: Написано так же, как и в примерах.
Ps2: Проблема не в приложении, так как оно рендерится на render() за пределами оператор if
Ps3: предупреждение появляется только тогда, когда браузер пытается выполнить «горячую перезагрузку» (когда я вношу изменения в любой файл)

import React from 'react';
import { render } from 'react-dom';
import { AppContainer } from 'react-hot-loader';
import a11y  from 'react-a11y'
import Store from './stores/Store';
import App from './components/App/App';

const store = new Store();

if(process.env.NODE_ENV === 'development'){
  a11y(React);
}

render(
  <AppContainer
    component={App}
    props={{ store }}
  />,
  document.getElementById('root')
);

if (module.hot) {
  module.hot.accept('./components/App/App', () => {
    render(
      <AppContainer
        component={require('./components/App/App').default}
        props={{ store }}
      />,
      document.getElementById('root')
    );
  });
}

person KadoBOT    schedule 20.04.2016    source источник
comment
Разве компонент={require('./components/App/App').default} не должен быть просто component={App}? Какова цель повторного требования того же компонента (встроенного, заметьте) и попытки использовать свойство .default?   -  person Hypaethral    schedule 20.04.2016
comment
Так написано в примерах Дэна. Если я перехожу на component={App}, я не получаю сообщение об ошибке, но компонент также не перезагружается в горячем режиме.   -  person KadoBOT    schedule 20.04.2016
comment
Ясно... это какое-то серьезное обновление того, как работает hotloader, и он находится в альфа-атм... Можете ли вы проверить версию hotloader в вашем файле package.json, а также ваши плагины/массивы ввода в webpack/babel конфигурация?   -  person Hypaethral    schedule 20.04.2016
comment
Он конфликтовал с другим плагином Babel (add-module-exports). Я удалил его, и теперь он работает.   -  person KadoBOT    schedule 20.04.2016


Ответы (1)


Хорошо, проблема была с моим файлом .babelrc. У меня были другие плагины, которые я удалил, и это сработало:

{
  "presets": ["es2015-loose", "react", "stage-1"],

  "plugins": [
    "react-hot-loader/babel",
    "transform-decorators-legacy"
  ],
}
person KadoBOT    schedule 20.04.2016
comment
Было бы намного полезнее, если бы вы указали, какие плагины вы удалили. - person kross; 27.06.2016