Ember - 编辑取消后回滚模型

时间:2014-06-13 17:30:19

标签: ember.js

我在以下情况下遇到了一些麻烦。

我有一个资源,我们称之为“用户”,它有两个嵌套的兄弟资源,' actions'和'日期',从而有两条路线:

/user/actions
/user/dates

用户模板的内容如下:

{{user.name}}

{{outlet}}

目标是显示'动作'和'约会'与插座中的用户相关联的列表。

这样可以正常工作,但我也希望能够点击用户名并进行更改,即编辑它,以便模板看起来像是这样的:

{{#unless inedit}}
    <span {{action='triggerUsernameEdit'}}>{{user.name}}</span>
{{else}}
    {{input value=user.name}}
    <button {{action='saveChanges'}}>Save</button>
    <button {{action='cancelChanges'}}>Cancel</button>
{{/unless}}
{{outlet}}

我没有使用Ember Data,这一直很有效,直到我尝试恢复到原始模型。我正在研究在 UserRoute 中克隆模型,然后设置原始用户名&#39;领域,但不知道这是否是正确的方法。

我已经看过其他示例,其中编辑操作将在不同的子路径上处理,让我们说:

/user/usernameEdit

但我认为这会使这些行动成为可能。或者&#39;日期&#39;列表消失,我不想要。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

如果您尝试进行回滚,请创建副本。

大(多个字段)或小(单个字段)比例,它是一个副本。绑定到复制的项目并允许它们编辑,在提交时,您将副本合并到原始项目中。取消时,销毁副本。

切换路线仍然会出现同样的问题,您仍然需要绑定到原始模型或副本。