3

我是 ember 的新手,如果已经问过这个问题,我很抱歉。我只是想在用户离开登录表单时提示警报。当我使用 linkTo 时一切正常,但是当我使用浏览器或手动更新 url 时,即使转换已中止,url 也会更新。我刚试过这个

JSBin

我在 ApplicationController 中记录了 currentPath。

我不确定我出了什么问题。请建议

4

2 回答 2

4

我通过使用 window.history.forward() 解决了这个问题

您可以在http://caniuse.com/#search=history查看它的兼容性

App.ApplicationRoute = Em.Route.extend({
    actions: {
      willTransition: (transition) {
         transition.abort();

         if (window.history) {
           window.history.forward();
         }
      }
    }
});
于 2014-06-05T22:04:50.153 回答
1

这按预期工作,当手动更改 URL/按下后退按钮时,URL 会在调用中止之前更改,这会导致 URL 暂时与页面上的内容不同步。我记得机智的提到没有一种简单的方法可以解决这个问题,并且无论如何在下次完成任何导航时都会修复它。

于 2013-07-19T08:06:14.750 回答