为什么router.transitionTo在转换到同一模型两次时中止?

时间:2013-05-09 01:55:17

标签: ember.js ember-data

如果我从商店获取我的余烬数据模型并转换到带有它的路线

var model = App.Foo.find(1);
router.transitionTo('foo', model);

它转换到下面的路线,我看到console.log

App.FooRoute = Ember.Route.extend({
    redirect: function() {
        console.log("redirect ...");                                         
        this.transitionTo('bar');
    }
});

如果我更改模型并再次转换,它仍会执行控制台日志,一切正常。但是,如果我连续2x在相同的模型上查找,控制台日志永远不会发生。当我逐步通过余烬源(RC3)时,我无法理解为什么它会在这种情况下中止。

为什么当我这样做时,转换会在ember中中止?

2 个答案:

答案 0 :(得分:1)

我不确定你在问什么 - 你能否通过“改变模型并再次转换”和“在同一模型上连续2次查找”来提供你所说的确切代码?< / p>

除此之外......如果您transitionTo已经有效的路线,则不会“重新输入”路线,虽然我不确定这是否与此相关 - 请您澄清一下你在做什么?

答案 1 :(得分:1)

我的解决方法是从路由转换按钮调用store方法,然后将其发送到我想要的组件。对我的品味有点“hacky”,但有效的方法。