0

我正在开发一个Ember.js包含多个具有依赖关系的模型的应用程序。例如,在为ClientI 设置模型时包含属性portfolios : DS.hasMany('Portfolio')

当用户进入应用程序时,他们会看到一个选项,可以立即在路径portfolio.add中添加一个新的投资组合,在其他表单字段中,他们会看到一个下拉菜单来选择他们正在为其创建投资组合的客户,以及一个选项通过创建一个新客户端{{#link-to client.add}}。这不是用户可以访问路由 client.add 的唯一方式

我希望 Ember 记住用户通过portfolio.add 到达了client.add 路由,更改提交按钮的文本以指示他们将在保存后返回portfolio.add,并转换回portfolio。在 promise 成功返回后添加,它将在下拉列表中自动选择新创建的客户端。

到目前为止,我认为我会使用这个答案:如何获得我以前的路线?检查先前的路由,并可能创建一个类似的 mixin 来存储对创建的客户端记录的引用。

这是一个 hack,我宁愿直接传递相关的对象/属性。有没有更好的办法?

4

1 回答 1

0

我最终将 Ember 构建推进到 Canary 并包括Ember.FEATURES["query-params"] = true;

然后,我在切换到需要在完成时返回的视图时添加了一个routedFrom参数,并且在我添加的原始路由模型this.transitionTo('originalroute',{routedFrom:null});中清除了routedFrom参数。

于 2013-10-28T16:43:46.090 回答