emberjs所需的页面不会打开“右键单击在新标签页中打开”

时间:2015-06-25 02:16:02

标签: javascript ruby-on-rails serialization ember.js handlebars.js

所以这里是带有

的javascript类emberjs代码
export default Ember.Controller.extend({:
....
....
....
....
showUser() {
  this.replaceRoute('user', this.get('user'));
  this.close();
}

这是带有html文件代码的把手:

<a href {{action "showUser"}}>{{username}} {{user-status user currentUser=currentUser}}</a>

该应用程序位于Ruby on Rails上。

有一个主题页面和一个用户个人资料页面。这样做会打开弹出式用户徽章,并允许用户单击用户名,并将其重定向到该用户个人资料页面。单击此按钮可以正常工作,并将用户从他们所在的主题页面重定向到用户页面。但我希望用户点击右键,打开新标签。这只是打开相同的主题页面。

在研究了ember后,我发现第一段代码中的transitionToRoute显示模型可能被序列化到URL中,最终使用了溃败的序列化钩子。为什么我认为这是原因?我不知道!我也尝试过replaceRoute方法,但也是如此。救命? :)

1 个答案:

答案 0 :(得分:0)

You can use the helper {{#link-to 'user' userModel}}, where 'user' and userModel is the model for the route, this will create a link that can be opened in a new tab.

Ember actions can not be routed by the browser, as they are not links, they are internal routes used by ember in JavaScript, same goes for transitionToRoute in controllers and transitionTo in routes.

more info here