Angular2 modify constant data returned from service
<p>My problem:
I want to have a default data in a separate file so I can call it to reset the default value if I want to, but the Const Data get updated.</p>

<p>I could hardcode the value straight in the constructor, but that will block me from using the same "Blank State" across different module.</p>

<p>Flow: </p>

<ol>
<li>Data in a <strong>const</strong> variable that get exported</li>
</ol>

<pre><code>

    export const CONST_DATA: ConstDataStructure {
      item1: 'Basic String 1',
      item2: 'Basic String 2'
      item3: 'Basic String 3'
    }

</code></pre>

<ol start="2">
<li>Service that Return a Promise of that data.</li>
</ol>

<pre><code>

    import { CONST_DATA } from './data.blank';
    @Injectable()
    export class DataService {
      getDefaultValue() {
        return Promise.resolve(CONST_DATA)
      }
    }

</code></pre>

<ol start="3">
<li>Set the Service in a <strong>Private</strong> item inside the Constructor.</li>
</ol>

<pre><code>

    export class App implements OnInit {
      defaultData: ConstDataStructure;
      constructor(private dataService: DataService) {}

      ngOnInit() {
        this.resetDefaultData();
      }
      resetDefaultData() {
        this.dataService.getDefaultValue().then(data => {
          this.defaultData = data;
          console.log("Return of the Promeses should have been resseting my data to the default???");
        });
      } 
    }

</code></pre>

<ol start="4">
<li>But the ngModel still update the data.blank.ts (???)</li>
</ol>

<p><strong>Question</strong>: Why can the ngModel update a <strong>Private service</strong> that get return asynch from a <strong>promise</strong> that reference a <strong>Constant</strong>? </p>

<p>What is wrong and how can I fix that. See <a href="http://plnkr.co/edit/0BeqBPdUfgrmp0aSDCqc?p=preview" rel="nofollow">plnk exemple here</a>: for full running exemple.</p>