Приложение общего / реагирующего / реагирующего кода не будет правильно запускать babel - PullRequest
0 голосов
/ 15 ноября 2018

Я пытаюсь настроить проект с общим кодом для реакции и реагирования-нативного, который был создан с использованием create-реагировать-нативного приложения, и оттуда добавив скрипт узла для загрузки веб-версии.

Простой пример hello world работал без заминок, но проблема заключается в первом очень простом компоненте, который имеет общий файл controller.js.

Полученное сообщение об ошибке выглядит следующим образом:

TypeError: Конструктор класса HqHeaderController не может быть вызван без 'new'

Это мой компонент ->, который работает, когда я не использую контроллер.

hq-header.web.js

import React from 'react';

// Imports => Controller
import HqHeaderController from './hq-header.controller';

// Component
class HqHeader extends HqHeaderController {
    render() {
        return <div>HQ Header Web</div>;
    }
}

export default HqHeader;

hq-header.controller.js

import { Component } from 'react';

// Controller
class HqHeaderController extends Component {
    componentDidMount() {
        this.init();
    }
    init() {
        console.group('[HqHeaderController] => fn.Init');
        console.groupEnd();
    }
}

export default HqHeaderController;

.babel-rc.js

module.exports = {
  presets: [
    "babel-preset-expo",
    [
      "@babel/env",
      {
        useBuiltIns: "usage",
        modules: "commonjs",
        targets: {
          esmodules: true,
          node: "current"
        },
        debug: true,
      }
    ],
    [
      "@babel/preset-react",
      {
        development: process.env.BABEL_ENV === "development",
      },
    ],
  ],
  plugins: ["@babel/transform-react-jsx", "@babel/transform-react-jsx-source"],
};

Конфигурация Babel-загрузчика вwebback используя oneOf:

  {
    test: /\.web?\.?(js|jsx|mjs)$/,
    include: paths.appSrc,
    exclude: /node_modules/,
    loader: require.resolve('babel-loader'),
    options: {
      // This is a feature of `babel-loader` for webpack (not Babel itself).
      // It enables caching results in ./node_modules/.cache/babel-loader/
      // directory for faster rebuilds.
      cacheDirectory: true,
    },
  },

Что я здесь не так делаю?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...