Графический, вот что ваши телескопы выглядеть как раньше мы вводим в любое текстовое поле:
Обратите внимание, что изолирования Scope 006 родительские является сферой, которая включена через создается в соответствии с директивой container
. Таким образом, searchText
в области 006 будет привязывать данные к области 005 (а не к области 003), поскольку используется примитив.
Если мы вводим 11
в первое текстовое поле и 22
во второе текстовое поле и снова исследовать области действия, мы можем увидеть, где привязка данных имели место:
searchforThis2
желтого цвета в объеме 005 чтобы указать, что было создано новое свойство. Это произошло из-за того, что используется примитив - область 005 не использует здесь прототипальное наследование, она просто создает новое свойство примитива для себя (т. Е. Оно не выглядит в области 003 для имени свойства). Другие желтые предметы показывают, что примитивные значения изменились.
Как вы уже обнаружили, решение этой «лучшей практики» связано с привязкой к свойствам объекта (а не примитивам) в родительской области (то есть области 003).
Использование следующих в контроллере:
$scope.obj = {searchforThis1: "Sample Text 1", searchforThis2: "Sample Text 2"};
и в вашем HTML:
<search searchtext="obj.searchforThis1"...>
...
<div container>
<search searchtext="obj.searchforThis2"...>
Объемы теперь выглядят так:
Если мы вводим 11
в первый текстовый блок и 22
во второе текстовое поле и снова просмотрите области, мы можем видеть, где t он Databinding состоялся:
Поскольку сфера 006 является изолят сфера, она использует его $parent
, чтобы добраться до объема 005 (как выше). Оттуда, однако, прототипное наследование находится в игре, поскольку мы не используем примитивы. свойство объекта searchforThis2
находится в рамках 003.
Бриллиантовое объяснение. Спасибо. Вы нарисовали эти диаграммы только для этого вопроса или у вас есть инструмент, который может проверять области углов и готовить такие диаграммы? – thrag
@thrag, у меня есть инструмент, который я написал/писал. –
@MarkRajcok Не могли бы вы рассмотреть возможность публикации этого инструмента публично, чтобы мы могли динамически рисовать эти блестящие карты областей? Я считаю, что можно избежать многих головных болей, и многие длинные разговоры будут сохранены :) –