title: Change detection not working in downgraded Angular components
body: <p>I'm in the process of converting a rather big application written in AngularJS to an Angular application using the @angular/upgrade module. For now, every component from AngularJS is running as expected in the Angular app. The app is being bootstrapped like this:</p>
  
  <pre><code>export class AppModule {
      constructor(
          private upgradeModule: UpgradeModule,
      ) {}
  
      ngDoBootstrap() {
          this.upgradeModule.bootstrap(
              document.body,
              ['myApp'],
              { strictDi: true },
          )
      }
  }
  </code></pre>
  
  <p>However, I've started to rewrite components in Angular and I've run into problems trying to get those downgraded components to work. I'm using ui-router to map components to states like this:</p>
  
  <pre><code>function config($stateProvider) {
      $stateProvider.state('some-state', {
          parent: 'app',
          views: {
              content: {
                  component: 'someComponent'
              }
          },
          url: '/some-state'
      })
  }
  </code></pre>
  
  <p>The rewritten component is being downgraded like this:</p>
  
  <pre><code>angular
     .module('myApp')
     .directive(
         'someComponent',
         downgradeComponent({ component: SomeComponent }),
     )
  </code></pre>
  
  <p>SomeComponent is just a regular Angular component.</p>
  
  <p>It shows up fine, the template is being rendered and everything, however, change detection doesn't seem to be working. The change detector seems to run once shortly after the view is being rendered, after that however, it doesn't ever run again unless i call it manually. <code>NgZone.isInAngularZone()</code> returns <code>false</code> if run anywhere within the downgraded component, I'm not sure if this is intended or not. If I inject <code>ChangeDetectorRef</code> and run <code>detectChanges</code> on any methods that change the fields of the component, the updates are being detected and rendered just fine. However, it would be way too much work in the long run to append an <code>(input)="changeDetectorRef.detectChanges()"</code> to every input, and call <code>detectChanges()</code> in pretty much any function that does anything.</p>
  
  <p>Is there anything I am missing? If I haven't provided enough information, I can try to get a minimal reproduction of the problem running, this would probably be a bit of work though, so I want to ask like this first.</p>