Angular 2 rollback model state in forms

后端 未结 2 906
忘了有多久
忘了有多久 2021-01-27 00:56

I have a form in Angular 2 which is bound to a model. Now I want the changes in the model to rollback when the user hits cancel. How do I achieve this?

相关标签:
2条回答
  • 2021-01-27 01:29

    I'll repeat what was discussed in the comments (because I don't like unanswered questions on SO):

    • For many use cases, you can probably use something very similar to the RestoreService that is discussed in the Hierarchical Injectors dev guide.
    • For the OP's particular case, where the model is bound to another component and live form changes need to be reflected in the other component, make a copy of your model before displaying the form. If the user cancels, revert to the copy, and notify the other component to use the copy also (i.e., send it the copy).
    0 讨论(0)
  • 2021-01-27 01:38

    If you make a copy of your model by doing Object.assign({}, yourModel) you won't mutate the original object, which will allow you to revert to the original object.

    0 讨论(0)
提交回复
热议问题