AppGyver:在超音速应用程序中不能连续打开两个模态

时间:2015-01-05 07:00:36

标签: steroids

我试图连续打开两个视图,作为Appgyver项目中的模态。当我执行supersonic.ui.modal.hide()supersonic.ui.modal.show(some_view)时,第二个视图不显示。如果我在alert('here')modal.hide()之间加入modal.show(),它似乎有效。这里有什么问题?它与supsersonic.ui.layers.pop()supersonic.ui.layers.push(another_view)相同。

使用示例:

}else if (option === 'chooseLocation'){
  $scope.currentOption = "location you chose.";
  $scope.f = true;
  supersonic.ui.modal.hide().then(function(){
    supersonic.ui.modal.show("chooseLocation");
    $localStorage.locationOption = 'lastUsed';
  });
}

我今天早上尝试的另一个片段与模态无关,但也不起作用:

supersonic.ui.layers.popAll().then(function(){
  var view = new supersonic.ui.View("searchresults#index?"+paramText);
  supersonic.ui.layers.push(view);
});

我在日志屏幕上看到的错误:

landing#drawer  11:23:29.382    error   
"supersonic.ui.layers.popAll rejected: {}"

1 个答案:

答案 0 :(得分:1)

这似乎是Supersonic API中的一个错误。

当本机包装器收到API调用时,将调用Javascript成功回调。这是无效的行为。当本机包装器完成 API调用(预期行为)时,应调用Javascript成功回调。

作为解决方法,使用Use didclose等使用Steroids.js事件来确定本机API调用何时完成。 有关详细说明,请参阅Steroids modalsSteroids layers

我在AppGyver Github issues

中提交了一个新错误