我正在使用ember-data作为模型。页面有两个选项卡,第一个选项卡是带有记录列表的网格。当用户单击某一行时,它会将用户带到第二个选项卡,并使用所选的网格行ID从数据库加载数据。当用户加载第一行,进行更改但未保存时,返回选项卡1,单击另一行,如果用户返回第一个选项卡并单击他第一次选择的行,则会将用户带回第二个选项卡并使用新模型,它会显示已更改的未保存数据。模型已从数据库刷新,但控制器属性值仍保留第一次用户交互的未保存更改。如何刷新属性而不是循环每个控制器属性以匹配新模型?
答案 0 :(得分:2)
我的理解是该模型不从服务器重新加载 - 一旦它在内存中,Ember Data将保留它,包括任何未保存的更改。
重置任何未保存的更改的方法是在退出第二个选项卡时调用模型的rollback()
方法,这将丢弃任何未提交的更改。在此之前,您可能想要检查您的用户是想要保存还是放弃他们的更改。