Angular Multipage Form, or Sharing data in Angular
TL;DR: For a multipage form use a parent state for the controller and nested states for the views. A parent state can have a controller that is shared by all child views, making the data flow much easier to reason about.