2016-07-21 18 views
0

Wie man eine Komponente in einer Direktive erfordert? Sie können den Controller einer Direktive in einer anderen Direktive anfordern, und Sie können eine Komponente in einer anderen Komponente benötigen. Aber wie benötigt man einen Komponentencontroller in einer Direktive?Erfordern Elternkomponente in der Direktive AngularJS 1.5

Richtlinie:

export class Directive { 

     require = "^^parentComponent"; 
     restrict = "A"; 
     link = (scope, element, attrs, parentComponent) => { 

    } 

    app.directive("someDirective", /* Init code omitted for brewity */); 
} 

Html:

<parent-component> 
    <div some-directive> </div> 
</parent-component> 

ich die folgende Fehlermeldung:

Error: [$compile:ctreq] Controller 'parentComponent', required by directive 'someDirective', can't be found! 
http://errors.angularjs.org/1.5.0/$compile/ctreq?p0=InvoiceCre 
+0

'parentComponent' hat Controller? –

Antwort

0
require: '^parentComponent' 

arbeitet

http://plnkr.co/edit/Rm53sWSJfnl7IVFzTjm2?p=preview

+0

Es würde auch für '^^ test' funktionieren, der Unterschied zwischen'^'&' ^^ 'ist eine Anweisung, die im ersten Elternteil vorhanden sein sollte und andere könnten irgendwo innerhalb eines Elternteils sein –