@desuvin

Как сделать react + require.js вместе?

Если гуглить данный вопрос, то находится вариант, где jsx компилируется прямо в браузер. Однако я хочу сделать компилировать в js через babel и подключать по require.js
В конфиге require.js прописано следующее:

require.config({
baseUrl: '/js/',
paths: {
react: "libs/react",
ui: "react"
}
});

requirejs(["ui/main"]);

В самом jsx файле

define(["react"], function(React) {
  class Test extends React.Component {
    render() {   
      return (

        <div>12312312123123</div>

      );
    }
  };

  React.render(
    <Test />,
    document.getElementById('test')
  );

});


babel отрабатывает без проблем, jsx тоже превращается в js. require.js грузит предварительно React, а далее срабатывает именно этот компонент.
Вроде все должно быть хорошо, но выводит какую-то сосвем страшную ошибку

Uncaught TypeError: Super expression must either be null or a function, not undefined
  • Вопрос задан
  • 2758 просмотров
Пригласить эксперта
Ответы на вопрос 1
JiLiZART
@JiLiZART
Люблю Yii, PHP, JS, Angular.js, React.js, БЭМ
Судя по тексту ошибки, каким то образом метод super() который обычно вызывается в конструкторе
constructor(props) {
   super(props); // вот тут получили undefined
}

И скорее всего получили, потому что отнаследоватся от React.Component так и не получилось
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы