ember.js – Emberjs:transitionToRoute在具有不同模型值的相同路径中

前端之家收集整理的这篇文章主要介绍了ember.js – Emberjs:transitionToRoute在具有不同模型值的相同路径中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个由3条路线组成的Ember应用程序:

> router.route(‘territory’,{path:’localhost / app / territory /:tid’});
> router.route(‘aggregator’,{path:localhost / app / territory /:tid:/ aggregator /:aid’});
> router.route(territory,{path:’localhost / app / territory /:tid / aggregator /:aid / item /:iid’});

可能的转换是从领土到聚合器,从聚合器到项目,从项目到子项目.
子项使用相同的路径(第3个),只是更改路径模型中的iID值.

我创建了一个动作,允许用户使用某些逻辑移动到特定路径,最后运行命令:

model={
    tid: "ttt"
    aid: "aaa"
    iid: "iii"
}

destination = 'item'; //the name of item route

controller.transitionToRoute(destination,model);

如果我在项目路线中并且我想要移动到其他项目,则URL将更新,但不会更新页面内容.显然,如果我使用生成URL刷新页面,内容将更新.

问题出在哪儿?在过渡方法中是不推荐使用,还是我必须使用不同的东西?

重要提示:我使用的是EmberJS – V1.0.0-RC.1

解决方法

不是bug只是emberjs中的正常情况,因为每个路由都有model和setupController.
模型函数用于从WS或数据模块异步地检索必要的信息(是 RSVP.Promise).完成后,信息将传递给setupController函数,在这里可以设置与当前路径视图相关的控制器的属性. 每次我改变路径的值但不改变路径的值时,只会调用setupController. 总而言之,就我而言,问题只是代码的组织问题.

猜你在找的JavaScript相关文章