我制作了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有关。