因此,我现在有一个纸牌游戏,当完成加载一个模式,带有一个按钮,以转换回主路线。这是单击模态的关闭按钮时调用的操作。
goBackHome() {
this.transitionToRoute('/games');
},
它确实重定向到请求的路由,但我仍然保留了对后端数据的所有更改。我也试过将模型本身传递给它
goBackHome() {
this.transitionToRoute('games');
},
基本上,它不会对所有内容进行硬刷新。我想要的是当调用transitionToRoute重新加载路由时,就像我自己输入确切的URL到浏览器一样。
答案 0 :(得分:0)
我试着写出可行的方法,希望你能选择一个并解决你的问题。
您需要将this.refresh();
添加到您的方法或model()
中以强制重新加载模型以获取新数据(取决于您需要的内容)!如果你想重新加载整个窗口的位置,我的意思是添加location.reload();
一个例子应该是
model(id){
var post = this.get('store').find('post', id); // Find the post from the store
post.reload(); // Force a reload
return post; // Return the fetched post NOW and the information will be updated.
}
此外,您可以在模型中执行其他操作()查看示例:
model(params) {
return this.store.findRecord('whatever', params.id, { reload: true });
}
此{ reload: true }
强制模型获取新数据,也可以使用findAll
实施。
ref:目前我只是使用afterModel挂钩强制重新加载,但重新加载标志再次运行会很好。
所以,您还可以采用另一种方式,即您可以向该函数发送一个参数,然后在路线actions
中获取该参数,您可以拥有this.referesh()
!重新加载模型。在这种情况下,您需要添加this.sendAction('actionName');
和路线actionName(){this.referesh();}