在JavaScript中调用该方法中的方法



考虑一下:

class ConnectUser {
connect = () => {
axios.get('URL').catch(err => {
// CAN I CALL `connect` METHOD AGAIN?!
// this.connect();
});
}
}

我的代码有一个方法,可以连接或拒绝连接到一些资源。如果发生异常,我可以再次调用它来争取连接吗?

可以。但如果你想在你的应用上推广这一点,可以考虑使用axios插件,它会自动重试,只有在你指定的重试次数之后才会失败。如果您将其定义为作用域中的单独函数而不是类方法,则可以再次调用just connect function。但是如果你真的需要使用this调用,在外部闭包中保存适当的this引用,像这样:

connect = () => {
const self = this 
axios.get('URL').catch(err => {
self.connect();
});
} 

然后用self代替

作为Danielo的答案的替代-如果您希望connect中的this引用类实例,您可以简单地将connect定义为类的方法,即

class ConnectUser {
connect() {
axios.get('URL').catch(err => {
return this.connect();
});
}
}

相关内容

  • 没有找到相关文章

最新更新