Per Dokumentation, gehen Sie wie folgt sollte den Trick:
$element.isolateScope()
ruft einen Isolate-Bereich ab, wenn einer direkt an das aktuelle Element angehängt ist. Dieser Getter sollte nur für Elemente verwendet werden, die eine -Direktive enthalten, die einen neuen Isolate-Bereich startet. Das Aufrufen von scope() für dieses Element gibt immer den ursprünglichen nicht isolieren Bereich zurück. Erfordert Debug Daten, die aktiviert werden sollen.
https://docs.angularjs.org/api/ng/function/angular.element#jquery-jqlite-extras
Wie in der Dokumentation erwähnt, wenn Sie die folgenden (wie Sie sollten in der Produktion) zu konfigurieren:
$compileProvider.debugInfoEnabled(false);
Diese Methode wird nicht mehr funktionieren ... Ich nehme an die primäre Grund dafür, die isolateScope
auf diese Weise zu erhalten, ist für Komponententests und es gibt nicht wirklich einen Grund, einige Maßnahmen zur Isolation des Oszilloskops bedingt durchzuführen (korrigiere mich, wenn ich falsch liege).
https://jsfiddle.net/r0m4n/f84yzdt4/
Wie wäre es mit der Überprüfung, ob es ein $ Elternteil gibt? – thegio
Isolierte Bereiche haben auch Eltern. Nur der root-Bereich funktioniert nicht. –
Ich werde deine Frage mit einer anderen Frage beantworten ... warum? haha – r0m4n