0

我正在使用 Ionic 2 开发一个应用程序。我正在使用 Ionic Native Storage 插件来存储键值对。为了解决并发问题,我想对存储的调用进行排队。

例如,我有 saveJob()、getJob() 和 deleteJob(),它们都返回 Promises。

假设这些方法是随机调用的。

this.storageService.saveJob().then((result) => {
 // blah blah
})

this.storageService.saveJob().then((result) => {
 // blah blah
}) 

this.storageService.deleteJob().then((result) => {
 // blah blah
}) 

this.storageService.getJob().then((result) => {
 // blah blah
})  

this.storageService.saveJob().then((result) => {
 // blah blah
}) 

我可以将这些电话排队吗?我想在 StorageService 提供程序中处理这个问题,以便我的应用程序的其余部分可以继续调用 StorageService,甚至不会注意到调用已排队。

4

1 回答 1

0

由于所有方法都返回承诺,您可以在成功或失败回调中调用其他方法。例如,如果 A()、B() 和 C() 是三个要调用的方法,您将调用 A(),并且当您在 A() 回调或 B() 回调中收到响应时,将调用 B 和 C分别。

于 2018-04-08T12:08:51.240 回答