title: angular2/rxjs/redux reimplementation - route change messing with observable
body: <p>I'm trying to do a basic reimplementation of redux in rxjs in an angular2 app.</p>
  
  <p>At this point it's basically just a couple of things I found on the internets stitched together, <a href="https://twitter.com/robwormald/status/661865214032240640" rel="nofollow">this plunker</a> for angular DI, <a href="https://github.com/rackt/redux/tree/master/examples/todomvc" rel="nofollow">this for file structure</a>, <a href="https://github.com/jas-chen/rx-redux" rel="nofollow">this for combineReducers</a> and lastly <a href="https://gitter.im/angular/angular?at=563bfd3c2e8c19094ec0158e" rel="nofollow">this for "redux in rxjs"</a>.</p>
  
  <p>There' sa couple of problems I'm having, but this is at the moment the biggest: 
  <a href="https://www.youtube.com/watch?v=xXau87UmqOs" rel="nofollow">https://www.youtube.com/watch?v=xXau87UmqOs</a></p>
  
  <p>What's happening:</p>
  
  <ul>
  <li>I have two components, <code>index</code> and <code>todos</code> each has a route</li>
  <li>in index I only show a list of todos</li>
  <li>in todos I can delete and add a new todo</li>
  <li>when I switch between routes without adding a new todo or removing one, everything works fine</li>
  <li>when I add or remove a todo, it still works, new todo is appended, old is deleted, data in <code>console.log</code> looks fine</li>
  <li><strong>when I go to different route after adding or removing in todo, <a href="https://github.com/fxck/ng2-rx-redux/blob/master/src/services/NgStore.ts#L24" rel="nofollow">observable</a> becomes the last redux action I called, for example</strong> <code>Object {type: "DELETE_TODO", id: 1}</code> <strong>instead of array of todos</strong></li>
  </ul>
  
  <p>here's what I described in <code>console.log</code>s (can be seen in the youtube video as well)</p>
  
  <pre><code>---- index loaded ----
  index.js:33 map in index: Object {todos: Array[3]}
  index.js:35 resp in index: Object {todos: Array[3]}
  index.js:38 ---- index destroyed ----
  todos.js:31 ---- todos loaded ----
  todos.js:33 map in todos: Object {todos: Array[3]}
  todos.js:35 resp in todos: Object {todos: Array[3]}
  todos.js:45 ---- todos destroyed ----
  index.js:30 ---- index loaded ----
  index.js:33 map in index: Object {todos: Array[3]}
  index.js:35 resp in index: Object {todos: Array[3]}
  index.js:38 ---- index destroyed ----
  todos.js:31 ---- todos loaded ----
  todos.js:33 map in todos: Object {todos: Array[3]}
  todos.js:35 resp in todos: Object {todos: Array[3]}
  NgStore.js:49 Object {type: "DELETE_TODO", id: 1}
  todos.js:33 map in todos: Object {todos: Array[2]}
  todos.js:35 resp in todos: Object {todos: Array[2]}
  todos.js:45 ---- todos destroyed ----
  index.js:30 ---- index loaded ----
  index.js:33 map in index: Object {type: "DELETE_TODO", id: 1}
  index.js:35 resp in index: Object {type: "DELETE_TODO", id: 1}
  </code></pre>
  
  <p>Any idea what could be causing the observable to change when route changes?</p>
  
  <p>Here's the repo <a href="https://github.com/fxck/ng2-rx-redux" rel="nofollow">https://github.com/fxck/ng2-rx-redux</a> it's usign the latest alpha(46)</p>