我想建立一个包含多个方法的父类(super class),因为我想从不同的类中调用它们。此外,我还有减少代码的好处。

但是,我收到错误消息“ super 表达式必须为null或函数”

这是我要从SuperScreen.js文件调用super.interface()函数的类之一:

import React from "react";
import { SuperScreen } from "./SuperScreen";

export default class HomeScreen extends SuperScreen {
  constructor(props) {
    super(props);
    this.state = {
      isLoading: true,
      data: null,
      key: 15
    };
  }

render() {
    return super.interface();
  }
}

我的SuperScreen.js
import React, { Component } from "react";

export default class SuperScreen extends Component {
  constructor() {}

  interface() {...}
}

但是,我仍然收到消息Super expression must either be null or a function。为什么以及如何解决?

亲切的问候和谢谢

最佳答案

您的导入有点困惑。
SuperScreen导入中删除大括号,因为您已将SuperScreen类导出为默认值。

import SuperScreen from "./SuperScreen";

或改正导出
export class SuperScreen extends Component

关于javascript - React Native-Super表达式必须为null或函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53485129/

10-09 13:51