【问题标题】:Importing class extension - Super expression must either be null or a function导入类扩展 - 超级表达式必须为 null 或函数
【发布时间】:2018-02-27 00:49:51
【问题描述】:

我已经阅读了很多关于这个问题的答案,但我一次又一次地遇到这个问题,却无法真正弄清楚原因。相当模糊的错误指向action.js中的导入...

// actions.js
import { api } from "./api"; <-- this is throwing the babel error

-

// api.js
import BaseApi from "../baseApi";

export default class Api extends BaseApi {
  constructor() {
    super();
    ...
  }

  ...
}

export const api = new Api();

-

// baseApi.js
export default class BaseApi {
  constructor() {
    ...
  }
  ...
}

任何帮助将不胜感激!

【问题讨论】:

  • 可能是import api from ./api
  • 我在某处读到,在同一个文件中同时使用导出和导出默认值有时会导致此错误。也许尝试删除 api js 中的默认导出并将 Api 类公开为普通导出。
  • @Eladian 是的,我试过了,我也切换了它们,所以单例是默认导出,但似乎仍然遇到同样的问题
  • @HemersonCarlin 不怕,语法正确
  • 接下来我要检查的是,从模块导入时我肯定得到了我期望的结果。

标签: javascript reactjs react-native typeerror babeljs


【解决方案1】:

原来这是一个循环依赖/导入问题,已全部排序!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-23
    • 2023-01-29
    • 1970-01-01
    • 1970-01-01
    • 2021-10-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多