gpt4 book ai didi

angularjs - 在 typescript 中使用延迟

转载 作者:搜寻专家 更新时间:2023-10-30 22:02:54 26 4
gpt4 key购买 nike

我在我的 typescript Controller 中使用 $q.defer 时遇到问题。我得到的错误是 this.$q.defer 不是函数。这是我的 typescript ....

export class AccountWizardController implements IAccountWizardScope {

account: Account;

static $inject = ['$q']
constructor(private $q: ng.IQService) {
}

saveState(): ng.IPromise<Account> {
console.log(this.$q);
var deferred = this.$q.defer<Account>();
console.log(deferred);
return deferred.promise;
}
}

export interface IAccountWizardScope {
account: ContractMonitor.Models.Account;
saveState(): ng.IPromise<Account>;
}

当我在 View 中调用 saveState() 方法时出现错误。这让我完全感到困惑。

谢谢。

最佳答案

$q 一直有 defer ( ref )。所以我的猜测是 this.$qundefined,这是因为你有错误的 this。修复,使用粗箭头来保留上下文:

saveState = (): ng.IPromise<Account> => {
console.log(this.$q);
var deferred = this.$q.defer<Account>();
console.log(deferred);
return deferred.promise;
}

关于angularjs - 在 typescript 中使用延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31420373/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com