首页 > 解决方案 > 无法在 React JS 中使用自定义类

问题描述

我想在我的项目中使用自定义服务。我创建了一个类,例如:Services/Auth.js具有以下内容。

class Auth {
    isLoggedIn() {
        return true;
    }
}

export default Auth;

然后在我的组件中导入并使用如下:

import Auth from './Services/Auth';
class App extends Component {
    render() {
        const isLoggedIn = Auth.isLoggedIn();
        // ... so on ...
    }
}

它可以编译,但在 rutime 上,它会引发以下错误:

TypeError: _Services_Auth__WEBPACK_IMPORTED_MODULE_7__.default.isLoggedIn is not a function

我究竟做错了什么?

标签: reactjs

解决方案


您正在导出类本身,而不是它的实例。

你会想要类似的东西

class Auth {
    isLoggedIn() {
        return true;
    }
}

export default new Auth();

导出单例实例。


推荐阅读