<p dir="auto"><strong>I'm submitting a ...</strong>  (check one with "x")</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="[ ] bug report
[x] feature request
[ ] support request =&gt; Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question"><pre class="notranslate"><code class="notranslate">[ ] bug report
[x] feature request
[ ] support request =&gt; Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question
</code></pre></div>
<p dir="auto"><strong>Current behavior</strong><br>
There is no way to trigger a navigation while preventing a pushState event</p>
<p dir="auto"><strong>Expected/desired behavior</strong><br>
There should by a way of preventing the pushState event, maybe using the NavigationExtras:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="this.router.navigate(['/myRoute', {id= id}], {preventPushState: true});"><pre class="notranslate"><code class="notranslate">this.router.navigate(['/myRoute', {id= id}], {preventPushState: true});
</code></pre></div>
<p dir="auto"><strong>What is the motivation / use case for changing the behavior?</strong><br>
I have a route that listen for its fragment parameters. When they are not present, I setup default values and trigger a navigation so that the url is updated correctly. There is no way for the user to go back since it will always be redirected from [route without param]-&gt;[route with param]. I would like to update the url without pushing an history state.</p>
<p dir="auto">This issue is related to the new-new router:</p>
<p dir="auto"><strong>I'm submitting a ...</strong>  (check one with "x")</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="[ ] bug report
[x] feature request
[ ] support request =&gt; Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question"><pre class="notranslate"><code class="notranslate">[ ] bug report
[x] feature request
[ ] support request =&gt; Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question
</code></pre></div>
<p dir="auto"><strong>Current behavior</strong><br>
There is not currently any way to navigate through an application while skipping the browser history.</p>
<p dir="auto"><strong>Expected/desired behavior</strong><br>
In the router-deprecated there was a second parameter on the <code class="notranslate">navigateByUrl</code> method that allowed us to <code class="notranslate">skipLocationChange</code>. It would be nice if the <code class="notranslate">navigate</code> method allowed this too.</p>
<p dir="auto"><strong>What is the motivation / use case for changing the behavior?</strong><br>
I have a specific use case where we have a 'loader' component that does a service call and essentially decides where to route you. I would like to be able to navigate to this loader component without including it in the back button history so that the browser doesn't get stuck in an infinite loop of going back to the loader only to get redirected.</p>
<p dir="auto"><strong>Please tell us about your environment:</strong></p>
<ul dir="auto">
<li><strong>Angular version:</strong> 2.0.0-rc.3</li>
<li><strong>Router version:</strong> alpha.7</li>
<li><strong>Browser:</strong> [all]</li>
<li><strong>Language:</strong> [all]</li>
</ul>