title: Call method of a component in directive
body: <p>I defined a directive iCheck and I want to call a method in a component when I click on radio button ... 
  My directive : <strong>directive.ts</strong></p>
  
  <pre><code>declare var jQuery: any;
  
  @Directive({
    selector: '[icheck]'
  })
  
  export class IcheckDirective implements AfterViewInit {
    constructor(private el: ElementRef) {
      jQuery(this.el.nativeElement).iCheck({
        checkboxClass: 'icheckbox_square-aero',
        radioClass: 'iradio_square-aero'
      }).on('ifChecked', function(event) {
        if (jQuery('input').attr('type') === 'radio') {
          // I want to call my method "selectType() of my component.ts ();
        }
      })
    }
    ngAfterViewInit(): void {
      return;
    }
  }
  </code></pre>
  
  <p><strong>folder.component.ts</strong></p>
  
  <pre><code>@Component({
    selector: 'app-folders',
    templateUrl: './folders.component.html',
    styleUrls: ['./folders.component.css']
  })
  export class FoldersComponent implements OnInit {
  
  constructor(
      private route: ActivatedRoute,
      private router: Router)
  
     selectType(){ ==&gt; Method that I want to call
      alert();
      console.log("Ici");
    }
  ..}
  </code></pre>
  
  <p>My html file <strong>folder.component.html</strong> where I use my directive in a input </p>
  
  <pre><code>&lt;input type="radio" icheck name="type" [(ngModel)]="type"value="OUT"&gt; OUT
  </code></pre>
  
  <p>So how can I call method "selectType()" when I click a radio button ?</p>