小编Ant*_*ell的帖子

Ember.js:如何使用异步确认阻止脏模型的转换?

我有一个非常常见的情况:有一个脏模型,如果用户试图转换到任何其他路线,我想显示确认.

我有这样的东西与window.confirm确认对话框一起工作:

var EventRoute = Ember.Route.extend({
  actions: {
    willTransition: function(transition) {
      var event = this.modelFor(this.routeName);
      if (event.get('isDirty') && !confirm("Are you sure?")) {
        transition.abort();
      } else {
        event.rollback();
        return true;
      }
    }
  }
});
Run Code Online (Sandbox Code Playgroud)

但是,如果我想使用异步确认(例如bootbox.js确认),我该如何停止转换?

我试图回来,Ember.RSVP.Promise但似乎willTransition不支持承诺.

所以问题是如何通过异步确认来防止转换到另一条路线?

javascript ember.js ember-data

8
推荐指数
1
解决办法
1764
查看次数

标签 统计

ember-data ×1

ember.js ×1

javascript ×1