title: When a service is injected into a parent controller should I also inject into the child or just inherit the service
body: <p>I am trying to understand how to bring a service into a controller when the service is used in both a parent and child controller and the parent and child HTML. Should I bring the service into the parent and then get a copy of that service from the scope in the child like this:</p>
  
  <pre><code>class AppController {
      static $inject = [
          '$scope',
          'configService'
      ]
      constructor(
          public $scope: IAppControllerScope,
          public config: IConfigService
          ) { 
          $scope.app = this;
          $scope.config = config;
      }
      // this.config is used here
  } 
  class AdminHomeController { 
      public app: AppController;
      public config: ConfigService;
      static $inject = [
          '$scope'
      ];
      constructor(
          private $scope: IAdminHomeControllerScope
          ) {  
          this.app = $scope.app;
          this.config = $scope.config;
          $scope.home = this;
      }
      // this.config is used here
  }
  </code></pre>
  
  <p>Or should I bring the service into both the parent and child controllers like this:</p>
  
  <pre><code>class AppController {
      static $inject = [
          '$scope',
          'configService'
      ]
      constructor(
          public $scope: IAppControllerScope,
          public config: IConfigService
          ) {
          $scope.app = this;
          $scope.config = config;
      }
      // this.config is used here
  } 
  class AdminHomeController {
      public app: AppController;
      static $inject = [
          '$scope',
          'configService'
      ];
      constructor(
          public $scope: IAdminHomeControllerScope,
          public config: IConfigService
          ) {
          this.app = $scope.app;
          $scope.home = this;
      }
      // this.config is used here
  }
  </code></pre>
  
  <p>I would appreciate any advice and suggestions on which would be the best way to do this and if there are differences. One more question. Should the parameters on my constructors be declared as private or public?</p>