ES6: «Невозможно вызвать конструктор класса без | new |»на создание класса, расширяющего другой - PullRequest
0 голосов
/ 11 декабря 2018

Я создал пакет restful-json-api-client , который реализует простой класс ES6:

export default class RestfulClient {
  constructor (baseUrl = '', { resource = '', headers = {} } = {}) {
    // ...
  }
}

После установки этого пакета в моем новом приложении React яЯ пытаюсь использовать его как следует (и как это делают тесты библиотеки):

UsersApi.js

import RestfulClient from 'restful-json-api-client'

export default class UsersApi extends RestfulClient {
  constructor() {
    super(process.env.REACT_APP_BACKEND_URL, {
      resource: 'users'
    })
  }
}

actions/user.actions.js

import UsersApi from 'apis/UsersApi'

const register = (email, password) => {
  return (dispatch) => {
    new UsersApi().create({ email, password }).then(
      // ...
    )
  }
}

Запуск этого кодане работает с:

Unhandled Rejection (TypeError): Cannot call a class constructor without |new|

RestfulClient
node_modules/restful-json-api-client/index.js:2

UsersApi
src/features/users/apis/UsersApi.js:4
  1 | import RestfulClient from 'restful-json-api-client'
  2 | 
  3 | export default class UsersApi extends RestfulClient {
> 4 |   constructor() {
  5 |     super(process.env.REACT_APP_BACKEND_URL, {
  6 |       resource: 'users'
  7 |     })

restful-json-api-client / index.js: 2

Кто-нибудь может объяснить мне, что здесь не так и как решитьпожалуйста, эту проблему?

Обновление

Я пытался создать класс для расширения, но в моем проекте, и он работает, поэтому проблема возникает из-за импорта пакета, поэтому ядумаю, я использую Webpack.

...