Ich habe das in beiden Richtungen gesehen; Was ist der Unterschied zwischen dem Erstellen eines Bereichs. $ Watch in einem Direktivencontroller gegenüber der Verknüpfungsfunktion?
Soweit ich das beurteilen kann, gibt es keinen Unterschied. Der bei der Verknüpfung übergebene Gültigkeitsbereich lautet: "Gültigkeitsbereich - Der Bereich, der von der Richtlinie für die Registrierung von Uhren verwendet werden soll."
Wenn Sie also keinen Controller oder Bereich für die Direktive deklarieren, haben Sie immer noch einen Bereich (aus dem Kontext, in dem die Direktive kompiliert wird), um in der von compile zurückgegebenen Link-Funktion Uhren hinzuzufügen.
Es gibt keinen wirklichen Unterschied zwischen den beiden. In der Tat ist der $ watch -Ausdruck sowohl vom Controller als auch von der Direktive unabhängig davon, wo er ursprünglich definiert wurde, zugänglich, da beide den gleichen $ scope haben. Davon abgesehen hat eine in der Richtlinie definierte $ watch einen ganz anderen Zweck als eine im Controller definierte.
Tags und Links javascript angularjs