title: Why RouterModule uses forRoot() AND forChild()?
body: <p>Why Angular RouterModule uses forRoot() and forChild()?</p>
  
  <p>I already read the article about forRoot pattern and how to defend provider singleton from multiple import (<a href="https://angular.io/guide/singleton-services#the-forroot-pattern" rel="nofollow noreferrer">https://angular.io/guide/singleton-services#the-forroot-pattern</a>) and I know why Routermodule uses forRoot().</p>
  
  <p>But My question is, Why it uses both <code>[ RouterModule.forRoot() &lt;=&gt; RouterModule.forChild() ]</code> ? Is it not ok just using <code>[ RouterModule.forRoot() &lt;=&gt; RouterModule ]</code>? </p>
  
  <p>Why angular developers forced users to write a few more alphabets for <code>FORCHILD()</code> ? Just for explicitness?</p>