Нужны примеры привязки атрибутов в пользовательских тегах AngularJS
Я пытаюсь создать пользовательский тег, подобный следующему:
где тип - это атрибут, который связывается с компонентом. таким образом, что он устанавливает текст в метке, как показано ниже:
{{type}}
... (другие компоненты) ...
Как сказано в документации, у меня есть контроллер, который устанавливает тип по умолчанию:
$scope.type = "Small";
так что если я использую свой тег без типа атрибута, он все равно будет установлен.
Я пытаюсь сделать привязку с помощью директивы:
angular.module('TestPage',[])
.directive('mytag',function() {
return {
restrict: 'E',
templateUrl: 'component.html',
scope: {
type: '='
}
}
});
Обратите внимание, что в моем шаблоне компонента есть соответствующие настройки ng-app (ng-app = "тестовая страница»).
Моя проблема в том, что привязка к типу, по-видимому, ничего не связывает.
Я прочитал документацию о том, как связать переменную с компонентами, используя директиву. Согласно документации, вы можете делать такие привязки в области видимости. Области видимо могут содержать "объект-хэш» (что бы это ни было!), которое создает нечто, называемое "изолировать область " (???). Такие рамки могут представлятьместные свойства " следующими способами:
@ или @attr - привязать свойство локальной области к атрибуту DOM. Результатом всегда является строка, поскольку атрибуты DOM являются строками. Если имя атрибута не указано, то локальное имя и имя атрибута совпадают. Задано и определение виджета области видимости: {localName: '@myAttr» }, тогда свойство области виджета localName будет отражать интерполированное значение hello {{name}}. При изменении атрибута имени будет изменяться свойство localName в области виджета. Имя читается из родительской области (не из области компонента).
Да ??? Какое отношение все это имеет к правильному синтаксису привязки?
= или = выражение - установить двунаправленную привязку между локальным свойством области действия и родительским свойством области действия. Если имя атрибута не указано, то локальное имя и имя атрибута совпадают. Дано и виджет определения области видимости: {localModel: '= MyAttr» }, тогда свойство области виджета localName будет отражать значение parentModel в родительской области видимости. Любые изменения в parentModel будут отражены в localModel, а любые изменения в localModel будут отражены в parentModel.
Извините меня? Что здесь говорят ???
или же &attr - предоставляет способ выполнить выражение в контексте родительской области. Если имя атрибута не указано, то локальное имя и имя атрибута совпадают. Дано и виджет определения области видимости: {localFn: 'прирост ()» }, а затем изолировать область видимости, свойство localFn будет указывать на функцию-обертку для выражения increment (). Часто этоЖелательно передать данные из изолированной области через выражение и в родительскую область, это можно сделать, передав карту имен и значений локальных переменных в оболочку выражения fn. Например, если выражение является приращением (количеством), тогда мы можем указать значение суммы, вызвав localFn как localFn ({amount: 22}).
Сейчас я'Я в полном замешательстве! У вас есть теги виджетов и какая-то связанная функция, которую я должен написать, чтобы выполнить привязку ??? Все, что я хочу, это привязать значение к метке метки!
Я скопировал приведенный выше текст из документации (http://docs.angularjs.org/guide/directive) чтобы подчеркнуть: этот документ читается как старая документация UNIX: действительно полезен для тех, кто уже знает систему, но не так полезен для начинающих, которые пытаются развить реальный опыт. Со всеми уроками, которые показывают, как выполнять простые задачи в AngularJS (отлично подходит для игрушечных приложений, но не так хорошо для видов клиентских приложений, которые я хочу создать), почему?Есть ли что-нибудь для более продвинутых вещей ???
Хорошо, время для меня, чтобы быть более конструктивным.
Может ли кто-нибудь предоставить несколько простых примеров того, как выполнять различные привязки, которые так трудно описать в этой документации ??? Примеры, которые показывают правильный синтаксис для этих операторов области действия и описания (на простом английском языке) того, как именно они возвращаются к атрибуту, добавляемому в пользовательский тег ???
Спасибо за ваше терпение и заранее спасибо за любую помощь.